]> git.ipfire.org Git - thirdparty/open-vm-tools.git/commitdiff
Condition some code on the glib version.
authorVMware, Inc <>
Thu, 24 Feb 2011 22:46:20 +0000 (14:46 -0800)
committerMarcelo Vanzin <mvanzin@vmware.com>
Thu, 24 Feb 2011 22:46:20 +0000 (14:46 -0800)
So open-vm-tools can compile with older glib (since its baseline is
glib 2.6.0 still).

Signed-off-by: Marcelo Vanzin <mvanzin@vmware.com>
open-vm-tools/configure.ac
open-vm-tools/services/plugins/vix/vixTools.c
open-vm-tools/services/vmtoolsd/threadPool.c

index eb46ca96e2e9b6cd4d04b32caefcad6e792b9e92..905fcc4350f7bc51d06e93e33a08c7f8f338969b 100644 (file)
@@ -972,6 +972,10 @@ TARGET_OS="$os"
 MODULES_DIR=""
 buildHgfsmounter=no
 
+if test "$have_glib_2_14" = "yes"; then
+   CPPFLAGS="$CPPFLAGS -DHAVE_GLIB_REGEX"
+fi
+
 if test "$os" = "linux"; then
    MODULES_DIR="$LINUXDIR/kernel/"
 
index 6dff451c8334c3bdf37c81f5658867d752df01a5..1d4c6d6dacf95d76e1a258e83d83b3a48dcc47a1 100644 (file)
@@ -5364,6 +5364,7 @@ VixToolsListFiles(VixCommandRequestHeader *requestMsg,    // IN
                   size_t maxBufferSize,                   // IN
                   char **result)                          // OUT
 {
+#if !defined(OPEN_VM_TOOLS) || defined(HAVE_GLIB_REGEX)
    VixError err = VIX_OK;
    const char *dirPathName = NULL;
    char *fileList = NULL;
@@ -5619,6 +5620,9 @@ abort:
    }
 
    return err;
+#else
+   return VIX_E_NOT_SUPPORTED;
+#endif
 } // VixToolsListFiles
 
 
index f6f0520b8e538879923976c20aad6ce871a989e5..79e177f323e46a474e4b202fe4c75bb89c7167a4 100644 (file)
@@ -477,8 +477,6 @@ void
 ToolsCorePool_Init(ToolsAppCtx *ctx)
 {
    gint maxThreads;
-   gint maxIdleTime;
-   gint maxUnused;
    GError *err = NULL;
 
    ToolsServiceProperty prop = { TOOLS_CORE_PROP_TPOOL };
@@ -488,20 +486,6 @@ ToolsCorePool_Init(ToolsAppCtx *ctx)
    gState.funcs.start = ToolsCorePoolStart;
    gState.ctx = ctx;
 
-   maxIdleTime = g_key_file_get_integer(ctx->config, ctx->name,
-                                        "pool.maxIdleTime", &err);
-   if (err != NULL || maxIdleTime <= 0) {
-      maxIdleTime = DEFAULT_MAX_IDLE_TIME;
-      g_clear_error(&err);
-   }
-
-   maxUnused = g_key_file_get_integer(ctx->config, ctx->name,
-                                      "pool.maxUnusedThreads", &err);
-   if (err != NULL || maxUnused < 0) {
-      maxUnused = DEFAULT_MAX_UNUSED_THREADS;
-      g_clear_error(&err);
-   }
-
    maxThreads = g_key_file_get_integer(ctx->config, ctx->name,
                                        "pool.maxThreads", &err);
    if (err != NULL) {
@@ -513,8 +497,27 @@ ToolsCorePool_Init(ToolsAppCtx *ctx)
       gState.pool = g_thread_pool_new(ToolsCorePoolRunWorker,
                                       NULL, maxThreads, FALSE, &err);
       if (err == NULL) {
+#if GLIB_CHECK_VERSION(2, 10, 0)
+         gint maxIdleTime;
+         gint maxUnused;
+
+         maxIdleTime = g_key_file_get_integer(ctx->config, ctx->name,
+                                              "pool.maxIdleTime", &err);
+         if (err != NULL || maxIdleTime <= 0) {
+            maxIdleTime = DEFAULT_MAX_IDLE_TIME;
+            g_clear_error(&err);
+         }
+
+         maxUnused = g_key_file_get_integer(ctx->config, ctx->name,
+                                            "pool.maxUnusedThreads", &err);
+         if (err != NULL || maxUnused < 0) {
+            maxUnused = DEFAULT_MAX_UNUSED_THREADS;
+            g_clear_error(&err);
+         }
+
          g_thread_pool_set_max_idle_time(maxIdleTime);
          g_thread_pool_set_max_unused_threads(maxUnused);
+#endif
       } else {
          g_warning("error initializing thread pool, running single threaded: %s",
                    err->message);