<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to bugs</title><link>https://sourceforge.net/p/dxgettext/bugs/</link><description>Recent changes to bugs</description><atom:link href="https://sourceforge.net/p/dxgettext/bugs/feed.rss" rel="self"/><language>en</language><lastBuildDate>Fri, 20 Jun 2025 06:47:10 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/dxgettext/bugs/feed.rss" rel="self" type="application/rss+xml"/><item><title>#156 TGnuGettextInstance.ngettext broken if SearchAllDomains is set to True</title><link>https://sourceforge.net/p/dxgettext/bugs/156/?limit=25#cd75</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;please see &lt;a href="https://sourceforge.net/p/dxgettext/code/187/"&gt;https://sourceforge.net/p/dxgettext/code/187/&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Thank you&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">raller09</dc:creator><pubDate>Fri, 20 Jun 2025 06:47:10 -0000</pubDate><guid>https://sourceforge.net1e5c87683f0ae124c5dd8f2354a53f2a1f468a36</guid></item><item><title>#157 RetranslateComponent will get the ListBox ListItem lose it changed such Tag, TagString...</title><link>https://sourceforge.net/p/dxgettext/bugs/157/?limit=25#d8af</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Here is a solution of the matter.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/landrix/Gettext-for-Delphi/issues/2" rel="nofollow"&gt;https://github.com/landrix/Gettext-for-Delphi/issues/2&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Thank you.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">wqmeng</dc:creator><pubDate>Sun, 19 Jan 2025 15:11:13 -0000</pubDate><guid>https://sourceforge.net1d7ba95699d9048ead8121b85c5a2e0efe95ebee</guid></item><item><title>RetranslateComponent will get the ListBox ListItem lose it changed such Tag, TagString...</title><link>https://sourceforge.net/p/dxgettext/bugs/157/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;When I use the RetranslateComponent, I find that the Component such as TComboBox, if I store something to the TComboBox ListItem Tag property, it will get detelted after Translate, The matter seems is the TComboBox is translated as a TStringList and then assgin the TStringList.Text to the TComboBox, which will delete all the old listitems and then create new listitems by the new Text value.  Of cause the Tag values stored to the old listitems will be deleted too.&lt;/p&gt;
&lt;p&gt;Also this will cause the TComboBox.ItemIndex value changed too, It will invoke a TComboBox.OnChange event too.&lt;/p&gt;
&lt;p&gt;So that we need to translate the ListItems of the TComboBox, TListBox, TListView ... one by one instead of Translate the Text of them? In this cause, the old listitems will keep and everything of them will not get changed.&lt;/p&gt;
&lt;p&gt;Thank you.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">wqmeng</dc:creator><pubDate>Sun, 19 Jan 2025 08:24:17 -0000</pubDate><guid>https://sourceforge.nete1f30d30a76ee9aa093593bea0f202a911dc12b2</guid></item><item><title>TGnuGettextInstance.ngettext broken if SearchAllDomains is set to True</title><link>https://sourceforge.net/p/dxgettext/bugs/156/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;When SearchAllDomains was introduced the patch code suggested to change TGnuGettextInstance.ngettext like this:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="k"&gt;domain&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;curmsgdomain&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="n"&gt;domainIndex&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="n"&gt;repeat&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;Result&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;dngettext&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;domain&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;singular&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;plural&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Number&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="n"&gt;Inc&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;domainIndex&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;domainIndex&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;domainlist&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;Count&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;then&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="k"&gt;domain&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;domainlist&lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="n"&gt;domainIndex&lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="n"&gt;until&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;not&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;SearchAllDomains&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;or&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;((&lt;/span&gt;&lt;span class="k"&gt;Result&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;singular&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;Result&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;plural&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;or&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;domainIndex&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;domainlist&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;Count&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Upon inclusion, it has been rewritten to use a while loop like this:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="k"&gt;Result&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;dngettext&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;curmsgdomain&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;singular&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;plural&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Number&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;SearchAllDomains&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;then&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;begin&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="n"&gt;domainIndex&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;while&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;Result&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;singular&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;Result&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;plural&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;domainIndex&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;domainlist&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;count&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;do&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;begin&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="k"&gt;domain&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;domainlist&lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="n"&gt;domainIndex&lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="k"&gt;Result&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;dngettext&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;domain&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;singular&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;plural&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Number&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="n"&gt;Inc&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;domainIndex&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;end&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="k"&gt;end&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;In doing so, the condition for the loop should have been completely inverted but the tests on Result were left as is.&lt;br/&gt;
This results in the fact that a valid translation found by the initial call is immediately overwritten by the call to dngettext in the loop.&lt;br/&gt;
The loop condition should read like this:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;    &lt;span class="k"&gt;while&lt;/span&gt; &lt;span class="ss"&gt;((&lt;/span&gt;&lt;span class="nb"&gt;Result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;singular&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt; &lt;span class="nv"&gt;or&lt;/span&gt; &lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;Result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;plural&lt;/span&gt;&lt;span class="ss"&gt;))&lt;/span&gt; &lt;span class="nv"&gt;and&lt;/span&gt; &lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;domainIndex&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="nv"&gt;domainlist&lt;/span&gt;.&lt;span class="nv"&gt;count&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt; &lt;span class="nv"&gt;begin&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Note how the tests on result have been inverted while still being grouped together.&lt;/p&gt;
&lt;p&gt;With this, I now have the proper translation being returned.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Olivier Sannier</dc:creator><pubDate>Thu, 09 Dec 2021 15:18:18 -0000</pubDate><guid>https://sourceforge.net176e6dbc9f76e4d410a0f13412d312fd19b02f0c</guid></item><item><title>Locale selection on Windows8+ from new WinAPI</title><link>https://sourceforge.net/p/dxgettext/bugs/155/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Windows 8 introduced a list of locales in the settings, as opposed to single language, like it was before. The Windows settings page tells that applications pick the first available locale from the list. However, applications using the outdated GetLocaleInfoW WinAPI get something else, something ridiculous, something that is adjusted via well hidden setting "Codepage for non-Unicode programs", which I had set up to be ANSI=UTF-8 mode long ago, so I had no idea I should ever be visiting it again.&lt;/p&gt;
&lt;p&gt;In practice, as seen on screenshot, I have set up locale priority RU, EN, CN. I have set up Windows system GUI to be Russian one. And most of applications were in Russian. But some ones, like Wireshark and HeidiSQL were picking the least preferred locale, the Chinese one, in my case. Now I understand that it can also be a locale not from the list at all, a completely different locale, if somebody changed "Codepage for non-Unicode programs" and forgot about it, since we almost get rid of non-Unicode programs nowadays.&lt;/p&gt;
&lt;p&gt;I propose using the new &lt;a class="" href="https://docs.microsoft.com/en-us/uwp/api/windows.system.userprofile.globalizationpreferences.Languages?view=winrt-19041" rel="nofollow"&gt;Windows.System.UserProfile.GlobalizationPreferences.Languages&lt;/a&gt; WinAPI. It is returning what is really a real list, and it is possible to pick a locale from it according to Windows settings label, the first supported one.&lt;/p&gt;
&lt;p&gt;Maybe not the first one! Why not. If somebody has a list of FR, DE, then program can pick DE, as opposed to undesired EN, not even on the list, like gettext does now, when only aware of single preferred locale.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">OCTAGRAM</dc:creator><pubDate>Sun, 06 Jun 2021 02:27:32 -0000</pubDate><guid>https://sourceforge.net0dcbea5bd96ccddfa01a3939f4df44c1fc230de9</guid></item><item><title>#153 Integer overflow in Proxify</title><link>https://sourceforge.net/p/dxgettext/bugs/153/?limit=25#1055</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Unfortunately I am not able to step through pas files when compiling for 64-bit but only when compiling for 32-bit. &lt;/p&gt;
&lt;p&gt;However it looks like the problem occur at this line in THookedObjects.Proxify(obj:TObject):&lt;br/&gt;
size:=NativeUInt(objClassData.ClassName)-NativeUInt(objClassData)+hookedClassNameLength+2;&lt;/p&gt;
&lt;p&gt;I can see that it calculates 0x0000000000E3BC16 - 0x0000000001208360, which result in a negative value and it throws an EIntOverflow exception.&lt;/p&gt;
&lt;p&gt;There is a comment above the code:&lt;br/&gt;
// According to Allen Bauer, we know that the ClassName is stored right after the&lt;br/&gt;
// virtual method pointers.&lt;/p&gt;
&lt;p&gt;This doesn't seem to be the case for 64-bit on C++ Builder XE6. It looks like ClassName is stored at a completely different place.&lt;/p&gt;
&lt;p&gt;NB. Thanks for trying to fix this. I am glad that someone is still working on dxgettext.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Ivan Johansen</dc:creator><pubDate>Sat, 31 Oct 2020 23:43:55 -0000</pubDate><guid>https://sourceforge.netab21a3fbd5cf5b25a1df24ec8aecad4e57070e21</guid></item><item><title>#150 Cannot compile ggassemble.exe - engine.PrepareFileList needs directory</title><link>https://sourceforge.net/p/dxgettext/bugs/150/?limit=50#cca4</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;actually the fix was to pass 'locale'+PathDelim&lt;/p&gt;
&lt;p&gt;fixed in revision #135&lt;/p&gt;
&lt;p&gt;(unfortunately I can't close tickets here)&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Thomas Mueller</dc:creator><pubDate>Fri, 30 Oct 2020 16:56:33 -0000</pubDate><guid>https://sourceforge.netaa6dd0a2e4fc7e2d8bd93ea0ba823d12a6b47f13</guid></item><item><title>#153 Integer overflow in Proxify</title><link>https://sourceforge.net/p/dxgettext/bugs/153/?limit=50#382d</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;That's probably because you are using different compiler switches for Win32 and Win64.&lt;/p&gt;
&lt;p&gt;Could you please provide the line number where the exception occurs? I don't have C++ Builder available for testing, but knowning the line number might enable me to spot the problem anyway.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Thomas Mueller</dc:creator><pubDate>Fri, 30 Oct 2020 16:48:42 -0000</pubDate><guid>https://sourceforge.net6accab0421389f92e20113e58594e9409f1ec05f</guid></item><item><title>#154 Errors when compiling on C++ Builder</title><link>https://sourceforge.net/p/dxgettext/bugs/154/?limit=50#2ed8</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;propsed fix applied in revision #134&lt;/p&gt;
&lt;p&gt;(unfortunately I can't close this ticket, I only have write access to the sources but no admin rights to the project)&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Thomas Mueller</dc:creator><pubDate>Fri, 30 Oct 2020 16:19:21 -0000</pubDate><guid>https://sourceforge.net5eeba2d8d626b3e1add483b2774f3b2fc49806db</guid></item><item><title>Errors when compiling on C++ Builder</title><link>https://sourceforge.net/p/dxgettext/bugs/154/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;I am using gnugettext.pas from revision 132.&lt;br/&gt;
I am using C++ Builder XE6.&lt;/p&gt;
&lt;p&gt;I get the following errors when including gnugettext.hpp:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;bcc64&lt;/span&gt; &lt;span class="n"&gt;Error&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="n"&gt;GnuGetText&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;hpp&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;353&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;expected&lt;/span&gt; &lt;span class="n"&gt;unqualified&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="kt"&gt;id&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;bcc64&lt;/span&gt; &lt;span class="n"&gt;Error&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="n"&gt;GnuGetText&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;hpp&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;354&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;expected&lt;/span&gt; &lt;span class="n"&gt;unqualified&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="kt"&gt;id&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;The reason is that LOCALE_SISO639LANGNAME and LOCALE_SISO3166CTRYNAME defined as const in the interface section of gnugettext.pas are already defined in winnls.h.&lt;/p&gt;
&lt;p&gt;The problem can be solved by adding this to gnugettext.pas:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="cp"&gt;{&lt;/span&gt;&lt;span class="nv"&gt;$EXTERNALSYM&lt;/span&gt; &lt;span class="na"&gt;LOCALE_SISO639LANGNAME&lt;/span&gt;&lt;span class="cp"&gt;}&lt;/span&gt;&lt;span class="x"&gt;&lt;/span&gt;
&lt;span class="cp"&gt;{&lt;/span&gt;&lt;span class="nv"&gt;$EXTERNALSYM&lt;/span&gt; &lt;span class="na"&gt;LOCALE_SISO3166CTRYNAME&lt;/span&gt;&lt;span class="cp"&gt;}&lt;/span&gt;&lt;span class="x"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Ivan Johansen</dc:creator><pubDate>Mon, 03 Aug 2020 20:10:55 -0000</pubDate><guid>https://sourceforge.net4fef645789716acb6b7e6a4ba149589d2e2dd0d3</guid></item></channel></rss>