diff --git a/src/sbbs3/gtkuseredit/gtkuseredit.c b/src/sbbs3/gtkuseredit/gtkuseredit.c
index 38f32d26311d0e6b9d7c20f3510d11cf2c4a3bdc..d2e132e7857daa8ebe0258c2050bce5ad63c8361 100644
--- a/src/sbbs3/gtkuseredit/gtkuseredit.c
+++ b/src/sbbs3/gtkuseredit/gtkuseredit.c
@@ -123,11 +123,15 @@ int read_config(void)
 }
 
 int main(int argc, char *argv[]) {
+	char	glade_path[MAX_PATH+1];
+
     gtk_init(&argc, &argv);
     glade_init();
 
     /* load the interface */
-    xml = glade_xml_new("gtkuseredit.glade", "MainWindow", NULL);
+	strcpy(glade_path, argv[0]);
+	strcpy(getfname(glade_path), "gtkuseredit.glade");
+    xml = glade_xml_new(glade_path, "MainWindow", NULL);
     /* connect the signals in the interface */
     glade_xml_signal_autoconnect(xml);
 	/* Set up the global config stuff. */