# HG changeset patch # User Stefan Monnier # Date 1253205715 0 # Node ID 5f7b67da2bbd88f04d1bddda5ab378a7a9d35f66 # Parent 633effc81f3dcb1a1d7705af94ea82767c97f105 (x_get_resource_string): Re-add for non-toolkit builds (bug#4461). diff -r 633effc81f3d -r 5f7b67da2bbd src/ChangeLog --- a/src/ChangeLog Thu Sep 17 15:58:56 2009 +0000 +++ b/src/ChangeLog Thu Sep 17 16:41:55 2009 +0000 @@ -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 -r 633effc81f3d -r 5f7b67da2bbd src/frame.c --- a/src/frame.c Thu Sep 17 15:58:56 2009 +0000 +++ b/src/frame.c Thu Sep 17 16:41:55 2009 +0000 @@ -3893,6 +3893,32 @@ 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