The Samba-Bugzilla – Bug 489
d_printf() cannot handle '\"'
Last modified: 2005-08-24 10:20:47 UTC
d_printf() cannot handle messege strings including '\"', for example
"this is a \"test\"." or swat.c:980, 996 , ...
To fix this problem or to modify messege strings not to include '\"' is required
to support SWAT i18n function.
Reassigning to me.
This is a problem with passing the msgid as both a tdb key and as
an entry in the msg file. The msg file retains the \" while the
C compiler eats the backslash, so a comparison between the escaped
and unescaped strings will fail.
A solution is to do a substitution of " with \" in lang_msg() but
this will increase the size of the string and possibly create
a bit of a mess. It could be easier just to change the \" to '
The BUG#412 is occurred by similar reason.
I think we need to decide totally
how to do against such kind of letters.
As you said, to avoid to use such characters
is one solution, I think. But this is not good.
I think to decide that is better maybe
1) " \ and other ASCII chars should be permitted
even if Samba 3.0.0 will be shipped to apply
your quick solution.
2) Escaped characters except 1) (i.e. \n, \t) may
not be permitted in the string for d_printf().
I have a patch to allow d_printf() to handle escaped " characters, i.e I
implemented the second paragraph of comment 2 which turned out to be not so hard
originally reported against one of the 3.0.0rc[1-4] releases.
Cleaning up non-production versions.
sorry for the same, cleaning up the database to prevent unecessary reopens of bugs.