]> glassweightruler.freedombox.rocks Git - Ventoy.git/blobdiff - LinuxGUI/Ventoy2Disk/main_gtk.c
Update languages.json (#1088)
[Ventoy.git] / LinuxGUI / Ventoy2Disk / main_gtk.c
index 5560991906d281d6db24cf97a430d93bb1d5b5b9..1957a430264677736d6c86134062419e342411ca 100644 (file)
@@ -8,10 +8,15 @@
 #include <errno.h>
 #include <time.h>
 #include <unistd.h>\r
+#include <sys/types.h>\r
+#include <linux/limits.h>\r
 #include <ventoy_define.h>
 #include <ventoy_util.h>\r
 #include "ventoy_gtk.h"\r
 \r
+char g_log_file[PATH_MAX];\r
+char g_ini_file[PATH_MAX];\r
+\r
 static int set_image_from_pixbuf(GtkBuilder *pBuilder, const char *id, const void *pData, int len)\r
 {\r
     GtkImage *pImage = NULL;\r
@@ -53,6 +58,7 @@ int early_msgbox(GtkMessageType type, GtkButtonsType buttons, const char *str)
 \r
 int main(int argc, char *argv[])\r
 {\r
+    int i;\r
     int len;\r
     const void *pData = NULL;\r
     GtkWidget *pWidget = NULL;\r
@@ -74,6 +80,20 @@ int main(int argc, char *argv[])
         return 1;\r
     }\r
 \r
+    snprintf(g_log_file, sizeof(g_log_file), "log.txt");\r
+    snprintf(g_ini_file, sizeof(g_ini_file), "./Ventoy2Disk.ini");\r
+    for (i = 0; i < argc; i++)
+    {
+        if (argv[i] && argv[i + 1] && strcmp(argv[i], "-l") == 0)
+        {
+            snprintf(g_log_file, sizeof(g_log_file), "%s", argv[i + 1]);\r
+        }
+        else if (argv[i] && argv[i + 1] &&  strcmp(argv[i], "-i") == 0)
+        {
+            snprintf(g_ini_file, sizeof(g_ini_file), "%s", argv[i + 1]);\r
+        }
+    }\r
+\r
     ventoy_log_init();\r
 \r
     vlog("================================================\n");\r
@@ -113,6 +133,7 @@ int main(int argc, char *argv[])
 \r
     on_init_window(pBuilder);\r
     g_signal_connect(G_OBJECT(pWidget), "delete_event", G_CALLBACK(on_exit_window), NULL);\r
+    g_signal_connect(G_OBJECT(pWidget), "destroy", G_CALLBACK(gtk_main_quit), NULL);\r
 \r
     gtk_main();\r
 \r