Index: trunk/src/flag_str.c =================================================================== --- trunk/src/flag_str.c (revision 16831) +++ trunk/src/flag_str.c (revision 16832) @@ -550,7 +550,7 @@ return pcb_strflg_common_f2s(flags, object_type, pcb_object_flagbits, PCB_ENTRIES(pcb_object_flagbits), intconn, compat); } -void pcb_strflg_map(unsigned long fbits, int object_type, void *ctx, void (*cb)(void *ctx, unsigned long flg, const char *name)) +void pcb_strflg_map(unsigned long fbits, int object_type, void *ctx, void (*cb)(void *ctx, unsigned long flg, const pcb_flag_bits_t *fb)) { int n, i, n_flagbits = PCB_ENTRIES(pcb_object_flagbits); for(n = 0; n < 32; n++) { @@ -561,7 +561,7 @@ for (i = 0; i < n_flagbits; i++) { unsigned long my_obj_typs = pcb_object_flagbits[i].object_types /*| pcb_object_flagbits[i].compat_types*/; if ((my_obj_typs & object_type) && (!pcb_object_flagbits[i].omit_list) && (pcb_object_flagbits[i].mask & bit)) { - cb(ctx, bit, pcb_object_flagbits[i].name); + cb(ctx, bit, &pcb_object_flagbits[i]); } } } Index: trunk/src/flag_str.h =================================================================== --- trunk/src/flag_str.h (revision 16831) +++ trunk/src/flag_str.h (revision 16832) @@ -80,7 +80,7 @@ /* Call cb for each flag bit for a given object type */ -void pcb_strflg_map(unsigned long fbits, int object_type, void *ctx, void (*cb)(void *ctx, unsigned long flg, const char *name)); +void pcb_strflg_map(unsigned long fbits, int object_type, void *ctx, void (*cb)(void *ctx, unsigned long flg, const pcb_flag_bits_t *fb)); /* same as above, for pcb level flags */ Index: trunk/src/main_act.c =================================================================== --- trunk/src/main_act.c (revision 16831) +++ trunk/src/main_act.c (revision 16832) @@ -324,9 +324,9 @@ static const char pcb_acts_DumpObjFlags[] = "DumpObjFlags()"; static const char pcb_acth_DumpObjFlags[] = "Print a script processable digest of all flags, per object type"; -static void dumpoflg(void *ctx, unsigned long flg, const char *name) +static void dumpoflg(void *ctx, unsigned long flg, const pcb_flag_bits_t *fb) { - printf(" %lx %s\n", flg, name); + printf(" %lx %s\n", flg, fb->name); } int pcb_act_DumpObjFlags(int argc, const char **argv, pcb_coord_t x, pcb_coord_t y)