Index: trunk/src/event.c =================================================================== --- trunk/src/event.c (revision 28026) +++ trunk/src/event.c (revision 28027) @@ -232,7 +232,7 @@ for (e = events[ev]; e != NULL; e = e->next) e->handler(hidlib, e->user_data, argc, argv); - fgw_call_all(&pcb_fgw, pcb_fgw_evnames[ev], argc, fargv); + fgw_ucall_all(&pcb_fgw, hidlib, pcb_fgw_evnames[ev], argc, fargv); } void pcb_events_init(void) Index: trunk/src/gui_act.c =================================================================== --- trunk/src/gui_act.c (revision 28026) +++ trunk/src/gui_act.c (revision 28027) @@ -1100,7 +1100,7 @@ fgw_arg_t args[2]; args[0].type = FGW_FUNC; args[0].val.argv0.func = fgw_func_lookup(&pcb_fgw, pcb_aname(fn, "LayerPropGui")); - args[0].val.argv0.user_call_ctx = NULL; + args[0].val.argv0.user_call_ctx = &PCB->hidlib; if (args[0].val.func != NULL) { args[1].type = FGW_LONG; args[1].val.nat_long = pcb_layer_id(PCB->Data, ly); @@ -1209,7 +1209,7 @@ fgw_arg_t args[2]; args[0].type = FGW_FUNC; args[0].val.argv0.func = fgw_func_lookup(&pcb_fgw, pcb_aname(fn, "GroupPropGui")); - args[0].val.argv0.user_call_ctx = NULL; + args[0].val.argv0.user_call_ctx = &PCB->hidlib; if (args[0].val.func != NULL) { args[1].type = FGW_LONG; args[1].val.nat_long = pcb_layergrp_id(PCB, g); Index: trunk/src_plugins/import_sch/import_sch.c =================================================================== --- trunk/src_plugins/import_sch/import_sch.c (revision 28026) +++ trunk/src_plugins/import_sch/import_sch.c (revision 28027) @@ -271,7 +271,7 @@ if (conf_import_sch.plugins.import_sch.verbose) pcb_message(PCB_MSG_DEBUG, "pcb_act_Import: about to run pcb_act_ExecuteFile, file = %s\n", tmpfile); - fgw_vcall(&pcb_fgw, &rs, "executefile", FGW_STR, tmpfile, 0); + fgw_uvcall(&pcb_fgw, &PCB->hidlib, &rs, "executefile", FGW_STR, tmpfile, 0); for(i = 0; i < nsources; i++) free((char *) cmd[8 + i]); @@ -348,7 +348,7 @@ return 0; } - fgw_vcall(&pcb_fgw, &rs, "executefile", FGW_STR, tmpfile, 0); + fgw_uvcall(&pcb_fgw, &PCB->hidlib, &rs, "executefile", FGW_STR, tmpfile, 0); free((char*)cmd[2]); free((char*)cmd[3]); Index: trunk/src_plugins/stroke/stroke.c =================================================================== --- trunk/src_plugins/stroke/stroke.c (revision 28026) +++ trunk/src_plugins/stroke/stroke.c (revision 28027) @@ -122,7 +122,7 @@ return 0; } - args[0].type = FGW_FUNC; args[0].val.argv0.func = f; args[0].val.argv0.user_call_ctx = NULL; + args[0].type = FGW_FUNC; args[0].val.argv0.func = f; args[0].val.argv0.user_call_ctx = &PCB->hidlib; args[1].type = FGW_COORD; fgw_coord(&args[1]) = stroke_first_x; args[2].type = FGW_COORD; fgw_coord(&args[2]) = stroke_first_y; args[3].type = FGW_COORD; fgw_coord(&args[3]) = stroke_last_x;