From 742d40e805b987ff1a4d8cb9f8f8d626b263cc46 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Thu, 17 Sep 2009 16:41:55 +0000 Subject: [PATCH] (x_get_resource_string): Re-add for non-toolkit builds (bug#4461). --- src/ChangeLog | 5 +++++ src/frame.c | 26 ++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) diff --git a/src/ChangeLog b/src/ChangeLog index 47dda2e0f80..14415997a33 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2009-09-17 Stefan Monnier + + * frame.c (x_get_resource_string): Re-add for non-toolkit builds + (bug#4461). + 2009-09-17 Dan Nicolaescu * puresize.h (BASE_PURESIZE): Increase to 1290000. diff --git a/src/frame.c b/src/frame.c index 6726a7b918a..b18446d38b6 100644 --- a/src/frame.c +++ b/src/frame.c @@ -3893,6 +3893,32 @@ display_x_get_resource (dpyinfo, attribute, class, component, subclass) attribute, class, component, subclass); } +#if defined HAVE_X_WINDOWS && !defined USE_X_TOOLKIT +/* Used when C code wants a resource value. */ +/* Called from oldXMenu/Create.c. */ +char * +x_get_resource_string (attribute, class) + char *attribute, *class; +{ + char *name_key; + char *class_key; + struct frame *sf = SELECTED_FRAME (); + + /* Allocate space for the components, the dots which separate them, + and the final '\0'. */ + name_key = (char *) alloca (SBYTES (Vinvocation_name) + + strlen (attribute) + 2); + class_key = (char *) alloca ((sizeof (EMACS_CLASS) - 1) + + strlen (class) + 2); + + sprintf (name_key, "%s.%s", SDATA (Vinvocation_name), attribute); + sprintf (class_key, "%s.%s", EMACS_CLASS, class); + + return x_get_string_resource (FRAME_X_DISPLAY_INFO (sf)->xrdb, + name_key, class_key); +} +#endif + /* Return the value of parameter PARAM. First search ALIST, then Vdefault_frame_alist, then the X defaults -- 2.39.2