From 214080a533f63bb40b172a5c8fbd1d725a5cfdad Mon Sep 17 00:00:00 2001 From: YAMAMOTO Mitsuharu Date: Wed, 16 Mar 2005 08:06:33 +0000 Subject: [PATCH] (mac_get_rdb_resource): Remove function. (x_get_string_resource): Use xrm_get_resource. --- src/macfns.c | 45 ++++++++++----------------------------------- 1 file changed, 10 insertions(+), 35 deletions(-) diff --git a/src/macfns.c b/src/macfns.c index dc4aa584f87..75994cab150 100644 --- a/src/macfns.c +++ b/src/macfns.c @@ -2030,49 +2030,24 @@ x_set_scroll_bar_default_width (f) /* Subroutines of creating a frame. */ -static char * -mac_get_rdb_resource (rdb, resource) - char *rdb; - char *resource; -{ - char *value = rdb; - int len = strlen (resource); - - while (*value) - { - if ((strncmp (value, resource, len) == 0) && (value[len] == ':')) - return xstrdup (&value[len + 1]); - - value = strchr (value, '\0') + 1; - } - - return NULL; -} - /* Retrieve the string resource specified by NAME with CLASS from - database RDB. */ + database RDB. + + The return value points to the contents of a Lisp string. So it + will not be valid after the next GC where string compaction will + occur. */ char * x_get_string_resource (rdb, name, class) XrmDatabase rdb; char *name, *class; { - if (rdb) - { - char *resource; - - if (resource = mac_get_rdb_resource (rdb, name)) - return resource; - if (resource = mac_get_rdb_resource (rdb, class)) - return resource; - } + Lisp_Object value = xrm_get_resource (rdb, name, class); - /* MAC_TODO: implement resource strings. (Maybe Property Lists?) */ -#if 0 - return mac_get_string_resource (name, class); -#else - return (char *)0; -#endif + if (STRINGP (value)) + return SDATA (value); + else + return NULL; } /* Return the value of parameter PARAM. -- 2.39.2