Package: intltool
Version: 0.40.0-1
Severity: normal

intltool 0.40.3 and older does not handle translatable entries with
dashes in desktop files. For example:

_X-XfceSettingsName=Window Manager

This may be more common that you would expect, as non-standard entries
in .desktop files are required to start with 'X-'. For example, this
affects the Xfce way of specifying 'short' names for entries in the
settings manager, at least in the upcoming 4.6 release.
I extracted the patch to fix this from the intltool subversion repo, and
I've attached it to this mail. The patch may need some minor
modification to work with 0.40.0 or even 0.40.3, as the line number may
have changed (but patch(1) may be intelligent enough to get this).
I guess this is too late for etch, though? Another option for
unstable/next stable (after lenny) would be to upgrade to 0.40.4, which
has this fix included.

// Alexander

-- System Information:
Debian Release: lenny/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'stable'), (499, 'unstable'),
(1, 'experimental')
Architecture: i386 (i686)

Kernel: Linux 2.6.24-1-686 (SMP w/2 CPU cores)
Locale: LANG=sv_SE.UTF-8, LC_CTYPE=sv_SE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages intltool depends on:
ii  automake [automaken]         1:1.10.1-3  A tool for generating GNU Standard
ii  file                         4.26-1      Determines file type using "magic"
ii  gettext                      0.17-4      GNU Internationalization utilities
ii  libxml-parser-perl           2.36-1.1+b1 Perl module for parsing XML files
ii  patch                        2.5.9-5     Apply a diff file to an original
ii  perl                         5.10.0-15   Larry Wall's Practical Extraction

intltool recommends no packages.

intltool suggests no packages.

-- no debconf information
Index: intltool-merge.in
===================================================================
--- intltool-merge.in	(revision 755)
+++ intltool-merge.in	(revision 756)
@@ -1224,7 +1224,7 @@
 
     while (<INPUT>) 
     {
-        if (s/^(\s*)_(\w+=(.*))/$1$2/)  
+        if (s/^(\s*)_([A-Za-z0-9\-]+=(.*))/$1$2/)  
         {
 	    my $string = $3;
 

Reply via email to