Move DONT_REOPEN_PTY from src/s to configure
[bpt/emacs.git] / src / w32reg.c
index 56e3b42..9c727ae 100644 (file)
@@ -1,6 +1,5 @@
 /* Emulate the X Resource Manager through the registry.
-   Copyright (C) 1990, 1993, 1994, 2001, 2002, 2003, 2004,
-                 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+   Copyright (C) 1990, 1993-1994, 2001-2012  Free Software Foundation, Inc.
 
 This file is part of GNU Emacs.
 
@@ -20,12 +19,12 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 /* Written by Kevin Gallo */
 
 #include <config.h>
+#include <setjmp.h>
 #include "lisp.h"
 #include "w32term.h"
 #include "blockinput.h"
 
 #include <stdio.h>
-#include <string.h>
 
 #define REG_ROOT "SOFTWARE\\GNU\\Emacs"
 
@@ -57,9 +56,7 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 */
 
 static char *
-w32_get_rdb_resource (rdb, resource)
-     char *rdb;
-     char *resource;
+w32_get_rdb_resource (char *rdb, char *resource)
 {
   char *value = rdb;
   int len = strlen (resource);
@@ -76,10 +73,8 @@ w32_get_rdb_resource (rdb, resource)
   return NULL;
 }
 
-LPBYTE
-w32_get_string_resource (name, class, dwexptype)
-     char *name, *class;
-     DWORD dwexptype;
+static LPBYTE
+w32_get_string_resource (char *name, char *class, DWORD dwexptype)
 {
   LPBYTE lpvalue = NULL;
   HKEY hrootkey = NULL;
@@ -115,7 +110,7 @@ w32_get_string_resource (name, class, dwexptype)
        }
 
       ok = (keyname
-           && (lpvalue = (LPBYTE) xmalloc (cbData)) != NULL
+           && (lpvalue = xmalloc (cbData)) != NULL
            && RegQueryValueEx (hrootkey, keyname, NULL, NULL, lpvalue, &cbData) == ERROR_SUCCESS);
 
       RegCloseKey (hrootkey);
@@ -146,22 +141,21 @@ w32_get_string_resource (name, class, dwexptype)
    database RDB. */
 
 char *
-x_get_string_resource (rdb, name, class)
-     XrmDatabase rdb;
-     char *name, *class;
+x_get_string_resource (XrmDatabase rdb, char *name, char *class)
 {
   if (rdb)
     {
       char *resource;
 
-      if (resource = w32_get_rdb_resource (rdb, name))
+      if ((resource = w32_get_rdb_resource (rdb, name)))
         return resource;
-      if (resource = w32_get_rdb_resource (rdb, class))
+      if ((resource = w32_get_rdb_resource (rdb, class)))
         return resource;
     }
 
-  return (w32_get_string_resource (name, class, REG_SZ));
-}
+  if (inhibit_x_resources)
+    /* --quick was passed, so this is a no-op.  */
+    return NULL;
 
-/* arch-tag: 755fce25-42d7-4acb-874f-2fb42336823d
-   (do not change this comment) */
+  return w32_get_string_resource (name, class, REG_SZ);
+}