OSDN Git Service

LinGui: add option to completely disable update checking
[handbrake-jp/handbrake-jp-git.git] / gtk / src / main.c
index 3782efe..6d0d814 100644 (file)
@@ -37,6 +37,7 @@
 #if !defined(_WIN32)
 #include <gst/gst.h>
 #include <libnotify/notify.h>
+#include <dbus/dbus-glib.h>
 #else
 #include <windows.h>
 #include <io.h>
@@ -657,7 +658,12 @@ IoRedirect(signal_user_data_t *ud)
        // Set encoding to raw.
        g_io_channel_set_encoding (ud->activity_log, NULL, NULL);
        // redirect stderr to the writer end of the pipe
+#if defined(_WIN32)
+       // dup2 doesn't work on windows for some stupid reason
+       stderr->_file = pfd[1];
+#else
        dup2(pfd[1], /*stderr*/2);
+#endif
        setvbuf(stderr, NULL, _IONBF, 0);
        channel = g_io_channel_unix_new (pfd[0]);
        // I was getting an this error:
@@ -800,8 +806,9 @@ main (int argc, char *argv[])
        ghb_load_icons();
 
 #if !defined(_WIN32)
-       ghb_hal_init();
+       dbus_g_thread_init();
 #endif
+       ghb_udev_init();
 
        ghb_write_pid_file();
        ud = g_malloc0(sizeof(signal_user_data_t));
@@ -820,6 +827,11 @@ main (int argc, char *argv[])
        // Since GtkBuilder no longer assigns object ids to widget names
        // Assign a few that are necessary for style overrides to work
        GtkWidget *widget;
+#if defined(_NO_UPDATE_CHECK)
+       widget = GHB_WIDGET(ud->builder, "check_updates_box");
+       gtk_widget_hide(widget);
+#endif
+
        widget = GHB_WIDGET(ud->builder, "preview_hud");
        gtk_widget_set_name(widget, "preview_hud");
        widget = GHB_WIDGET(ud->builder, "preview_window");