rem: iconset = WMCreatePLDictionary(NULL, NULL, NULL);
add: iconset = WMCreatePLDictionary(NULL, NULL);
context: main(int argc, char **argv){    WMPropList *window_name, *icon_key, *window_attrs, *icon_value;    WMPropList *all_windows, *iconset, *keylist;    char *path;    int i;    ProgName = argv[0];    for (i = 1; i < argc; i++) {	if (strcmp(argv[i], "-h")==0	    || strcmp(argv[i], "--help")==0) {	    print_help();	    exit(0);	} else if (strcmp(argv[i], "--version")==0) {	    puts(PROG_VERSION);	    exit(0);	}    }        path = defaultsPathForDomain("WMWindowAttributes");        all_windows = WMReadPropListFromFile(path);    if (!all_windows) {	printf("%s:could not load WindowMaker configuration file \"%s\".\n", 	       ProgName, path);	exit(1);    }    iconset = WMCreatePLDictionary(NULL, NULL, NULL);    keylist = WMGetPLDictionaryKeys(all_windows);    icon_key = WMCreatePLString("Icon");        for (i=0; i<WMGetPropListItemCount(keylist); i++) {	WMPropList *icondic;		window_name = WMGetFromPLArray(keylist, i);	if (!WMIsPLString(window_name))	    continue;			window_attrs = WMGetFromPLDictionary(all_windows, window_name);	if (window_attrs && WMIsPLDictionary(window_attrs)) {	    icon_value = WMGetFromPLDictionary(window_attrs, icon_key);	    if (icon_value) {				icondic = WMCreatePLDictionary(icon_key, icon_value, 						      NULL);		WMPutInPLDictionary(iconset, window_name, icondic);	    }	}    }        if (argc==2) {	WMWritePropListToFile(iconset, argv[1], False);    } else {	puts(WMGetPropListDescription(iconset, True));    }    exit(0);}