Index: extedit_dad.c =================================================================== --- extedit_dad.c (revision 13377) +++ extedit_dad.c (revision 13378) @@ -84,7 +84,7 @@ ee_t ee; char tmp[256]; const char *names[NUM_METHODS+1]; - int n; + int n, res; for(n = 0; n < NUM_METHODS; n++) names[n] = methods[n].name; @@ -120,8 +120,10 @@ PCB_DAD_NEW(ee.dlg, "External editor", "External editor", &ee, pcb_true, NULL); ee_data2dialog(&ee); - PCB_DAD_RUN(ee.dlg); + res = PCB_DAD_RUN(ee.dlg); PCB_DAD_FREE(ee.dlg); - return NULL; + if (res != 0) + return NULL; + return &methods[ee.mthi]; }