summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--base/test_suite.h1
-rw-r--r--build/linux/system.gyp23
-rw-r--r--chrome/app/chrome_dll_main.cc1
-rw-r--r--chrome/chrome.gyp2
-rw-r--r--chrome/plugin/plugin_thread.cc1
5 files changed, 6 insertions, 22 deletions
diff --git a/base/test_suite.h b/base/test_suite.h
index 352c0b8..236c3ed 100644
--- a/base/test_suite.h
+++ b/base/test_suite.h
@@ -41,6 +41,7 @@ class TestSuite {
CommandLine::Init(argc, argv);
testing::InitGoogleTest(&argc, argv);
#if defined(OS_LINUX)
+ g_thread_init(NULL);
gtk_init_check(&argc, &argv);
#endif
// Don't add additional code to this constructor. Instead add it to
diff --git a/build/linux/system.gyp b/build/linux/system.gyp
index 68b52be..e10c905 100644
--- a/build/linux/system.gyp
+++ b/build/linux/system.gyp
@@ -9,15 +9,15 @@
'type': 'settings',
'direct_dependent_settings': {
'cflags': [
- '<!@(pkg-config --cflags gtk+-2.0)',
+ '<!@(pkg-config --cflags gtk+-2.0 gthread-2.0)',
],
},
'link_settings': {
'ldflags': [
- '<!@(pkg-config --libs-only-L --libs-only-other gtk+-2.0)',
+ '<!@(pkg-config --libs-only-L --libs-only-other gtk+-2.0 gthread-2.0)',
],
'libraries': [
- '<!@(pkg-config --libs-only-l gtk+-2.0)',
+ '<!@(pkg-config --libs-only-l gtk+-2.0 gthread-2.0)',
],
},
},
@@ -107,23 +107,6 @@
},
},
{
- 'target_name': 'gthread',
- 'type': 'settings',
- 'direct_dependent_settings': {
- 'cflags': [
- '<!@(pkg-config --cflags gthread-2.0)',
- ],
- },
- 'link_settings': {
- 'ldflags': [
- '<!@(pkg-config --libs-only-L --libs-only-other gthread-2.0)',
- ],
- 'libraries': [
- '<!@(pkg-config --libs-only-l gthread-2.0)',
- ],
- },
- },
- {
'target_name': 'x11',
'type': 'settings',
'direct_dependent_settings': {
diff --git a/chrome/app/chrome_dll_main.cc b/chrome/app/chrome_dll_main.cc
index 64f5ce53..8bacd59 100644
--- a/chrome/app/chrome_dll_main.cc
+++ b/chrome/app/chrome_dll_main.cc
@@ -552,6 +552,7 @@ int ChromeMain(int argc, const char** argv) {
#endif
} else if (process_type.empty()) {
#if defined(OS_LINUX)
+ g_thread_init(NULL);
// Glib type system initialization. Needed at least for gconf,
// used in net/proxy/proxy_config_service_linux.cc. Most likely
// this is superfluous as gtk_init() ought to do this. It's
diff --git a/chrome/chrome.gyp b/chrome/chrome.gyp
index 1b59fd8..39992b4 100644
--- a/chrome/chrome.gyp
+++ b/chrome/chrome.gyp
@@ -3037,8 +3037,6 @@
'<@(chromium_dependencies)',
# Needed for chrome_dll_main.cc #include of gtk/gtk.h
'../build/linux/system.gyp:gtk',
- # Needed for chrome_dll_main.cc use of g_thread_init
- '../build/linux/system.gyp:gthread',
],
'sources': [
'app/chrome_dll_main.cc',
diff --git a/chrome/plugin/plugin_thread.cc b/chrome/plugin/plugin_thread.cc
index ae90e1a..307cbaa 100644
--- a/chrome/plugin/plugin_thread.cc
+++ b/chrome/plugin/plugin_thread.cc
@@ -35,6 +35,7 @@ PluginThread::PluginThread()
{
// XEmbed plugins assume they are hosted in a Gtk application, so we need
// to initialize Gtk in the plugin process.
+ g_thread_init(NULL);
const std::vector<std::string>& args =
CommandLine::ForCurrentProcess()->argv();
int argc = args.size();