r14344 - in /desktop/unstable/libbonobo/debian: changelog patches/20_server-files-gettext.patch

lool at users.alioth.debian.org lool at users.alioth.debian.org
Mon Jan 28 16:01:01 UTC 2008


Author: lool
Date: Mon Jan 28 16:01:01 2008
New Revision: 14344

URL: http://svn.debian.org/wsvn/pkg-gnome/?sc=1&rev=14344
Log:
* New patch, 20_server-files-gettext, adapted from Ubuntu (to lookup
  both of debian-gettext-domain and ubuntu-gettext-domain):
  - activation-server/object-directory-load.c, parse_oaf_server_attrs():
    Check <oaf_server> tag attributes values for "debian-gettext-domain" or
    "ubuntu-gettext-domain" and store the latest in the previously unused
    'domain' field of the server struct.
  - bonobo-activation/bonobo-activation-server-info.c,
    bonobo_server_info_prop_lookup(): If 'domain' field is set, try
    gettext() before looking up a translation in the .server file itself.

Added:
    desktop/unstable/libbonobo/debian/patches/20_server-files-gettext.patch
Modified:
    desktop/unstable/libbonobo/debian/changelog

Modified: desktop/unstable/libbonobo/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/libbonobo/debian/changelog?rev=14344&op=diff
==============================================================================
--- desktop/unstable/libbonobo/debian/changelog (original)
+++ desktop/unstable/libbonobo/debian/changelog Mon Jan 28 16:01:01 2008
@@ -1,3 +1,17 @@
+libbonobo (2.20.3-2) UNRELEASED; urgency=low
+
+  * New patch, 20_server-files-gettext, adapted from Ubuntu (to lookup
+    both of debian-gettext-domain and ubuntu-gettext-domain):
+    - activation-server/object-directory-load.c, parse_oaf_server_attrs():
+      Check <oaf_server> tag attributes values for "debian-gettext-domain" or
+      "ubuntu-gettext-domain" and store the latest in the previously unused
+      'domain' field of the server struct.
+    - bonobo-activation/bonobo-activation-server-info.c,
+      bonobo_server_info_prop_lookup(): If 'domain' field is set, try
+      gettext() before looking up a translation in the .server file itself.
+
+ -- Loic Minier <lool at dooz.org>  Mon, 28 Jan 2008 16:44:09 +0100
+
 libbonobo (2.20.3-1) unstable; urgency=low
 
   * New upstream bugfix release; no API changes.

Added: desktop/unstable/libbonobo/debian/patches/20_server-files-gettext.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/libbonobo/debian/patches/20_server-files-gettext.patch?rev=14344&op=file
==============================================================================
--- desktop/unstable/libbonobo/debian/patches/20_server-files-gettext.patch (added)
+++ desktop/unstable/libbonobo/debian/patches/20_server-files-gettext.patch Mon Jan 28 16:01:01 2008
@@ -1,0 +1,65 @@
+diff -Nur libbonobo-2.20.3/activation-server/object-directory-load.c libbonobo-2.20.3.new/activation-server/object-directory-load.c
+--- libbonobo-2.20.3/activation-server/object-directory-load.c	2007-12-22 21:34:50.000000000 +0100
++++ libbonobo-2.20.3.new/activation-server/object-directory-load.c	2008-01-28 16:51:06.000000000 +0100
+@@ -133,6 +133,7 @@
+         const char *type = NULL;
+         const char *location = NULL;
+         const char *att, *val;
++        const char *domain = NULL;
+         char *error;
+         int i = 0;
+ 
+@@ -152,6 +153,8 @@
+                                 type = val;
+                         else if (!location && !strcmp (att, "location"))
+                                 location = val;
++                        else if (!domain && ((!strcmp (att, "debian-gettext-domain")) || (!strcmp (att, "ubuntu-gettext-domain"))))
++                                domain = val;
+                 }
+                 
+         } while (att && val);
+@@ -202,7 +205,7 @@
+         info->cur_server->location_info = CORBA_string_dup (location);
+         info->cur_server->hostname = CORBA_string_dup (info->host);
+         info->cur_server->username = CORBA_string_dup (g_get_user_name ());
+-        info->cur_server->domain = CORBA_string_dup ("unused");
++        info->cur_server->domain = CORBA_string_dup (domain ?  domain : "");
+ 
+ #ifdef G_OS_WIN32
+         if (!strcmp (type, "exe") || !strcmp (type, "shlib"))
+diff -Nur libbonobo-2.20.3/bonobo-activation/bonobo-activation-server-info.c libbonobo-2.20.3.new/bonobo-activation/bonobo-activation-server-info.c
+--- libbonobo-2.20.3/bonobo-activation/bonobo-activation-server-info.c	2007-12-22 21:34:50.000000000 +0100
++++ libbonobo-2.20.3.new/bonobo-activation/bonobo-activation-server-info.c	2008-01-28 16:53:36.000000000 +0100
+@@ -29,6 +29,7 @@
+ #include <bonobo-activation/bonobo-activation-server-info.h>
+ 
+ #include <string.h>
++#include <libintl.h>
+ 
+ /**
+  * bonobo_server_info_prop_find:
+@@ -74,6 +75,24 @@
+         char *prop_name_buf;
+                      
+ 	if (i18n_languages) {
++                if (server->domain && *server->domain) {
++                    const char *value = bonobo_server_info_prop_lookup (server, prop_name, NULL);
++                    if (value) {
++                        const char *translated_value;
++
++                        translated_value = dgettext (server->domain, value);
++
++                        if (translated_value != value) {
++                                if (bind_textdomain_codeset (server->domain, NULL))
++                                        translated_value = g_strdup (translated_value);
++                                else
++                                        translated_value = g_locale_to_utf8 (translated_value, -1, NULL, NULL, NULL);
++
++                                return translated_value;
++                        }
++                    }
++                }
++
+ 		for (cur = i18n_languages; cur; cur = cur->next) {
+                         prop_name_buf = g_strdup_printf ("%s-%s", prop_name, (char *) cur->data);
+ 




More information about the pkg-gnome-commits mailing list