<div dir="ltr"><div>So I guess we can't use the patch as it.</div><div>On my side, since I applied it, I haven't faced any problem on Windows environment but I'm only using pdftohtml -xml from poppler. I might amend the patch to scope the modification to the part I use.</div><div>Regarding VMS (I did not even know what it was before this conversation!), I might manage the 'VMS' directive in the gfile.cc to keep in that case the use of fopen</div><div><br></div><div class="gmail_extra">I just have a look to GooFile. As I understand, Martin suggests to use it instead of gfile.cc, am I right?<br clear="all"><div><div class="m_5940757279149968482gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><br>--<br>Cordialement / Regards<br>Thibaut Brard<br></div></div></div></div>
<br><div class="gmail_quote">2018-06-24 23:43 GMT+02:00 William Bader <span dir="ltr"><<a href="mailto:williambader@hotmail.com" target="_blank">williambader@hotmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">




<div dir="ltr">
<div id="m_5940757279149968482m_738437046425441133divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Helvetica,sans-serif" dir="ltr">
<p style="margin-top:0;margin-bottom:0">I haven't used VMS for about two decades, but I remember that the extra options to fopen() are important. Without them, I think that you end up with a record oriented file instead of a stream file, and stdio might not
 work as you expect, for example, writing '\n' might close the current record instead of writing a 0x0A byte. The full list of parameters is in the entry for creat() at <a href="http://h41379.www4.hpe.com/commercial/c/docs/5763p021.html#index_x_600" class="m_5940757279149968482m_738437046425441133OWAAutoLink" id="m_5940757279149968482m_738437046425441133LPlnk786712" target="_blank">http://h41379.www4.<wbr>hpe.com/commercial/c/docs/5763<wbr>p021.html#index_x_600</a></p>
<div>HP sold VMS to a company that is porting it to <span>Intel x86-64, so VMS might soon be easier to run. <a href="http://www.openvms.org/node/107" class="m_5940757279149968482m_738437046425441133OWAAutoLink" id="m_5940757279149968482m_738437046425441133LPlnk678308" target="_blank">http://www.openvms.org/no<wbr>de/107</a></span><br>
</div>
Regards, William<br>
<br>
<div style="color:rgb(0,0,0)">
<hr style="display:inline-block;width:98%">
<div id="m_5940757279149968482m_738437046425441133divRplyFwdMsg" dir="ltr"><font style="font-size:11pt" face="Calibri, sans-serif" color="#000000"><b>From:</b> poppler <<a href="mailto:poppler-bounces@lists.freedesktop.org" target="_blank">poppler-bounces@lists.freedes<wbr>ktop.org</a>> on behalf of Martin (gzlist) <<a href="mailto:gzlist@googlemail.com" target="_blank">gzlist@googlemail.com</a>><br>
<b>Sent:</b> Sunday, June 24, 2018 8:05 AM<br>
<b>To:</b> <a href="mailto:poppler@lists.freedesktop.org" target="_blank">poppler@lists.freedesktop.org</a><br>
<b>Subject:</b> Re: [poppler] Utils - Fix UTF-16 file name on Windows environment</font>
<div> </div>
</div>
<div class="m_5940757279149968482m_738437046425441133BodyFragment"><font size="2"><span style="font-size:11pt">
<div class="m_5940757279149968482m_738437046425441133PlainText"><div><div class="m_5940757279149968482h5">On 19/06/2018, Albert Astals Cid <<a href="mailto:aacid@kde.org" target="_blank">aacid@kde.org</a>> wrote:<br>
><br>
> It does make some sense given that function exists in the first place but my<br>
> experience with windows is veeeeeeeeeeeeery limited so I'd like for someone<br>
> else to vouch for this before landing it.<br>
<br>
Overall the change might be, but there are some tricky aspects.<br>
<br>
On windows fopen takes a narrow string of variable codepage, and<br>
openFile takes (sort-of*) utf-8 but the types are not distinguished in<br>
the codebase so it's tricky to see what callers are providing.<br>
<br>
In cases where the string being used comes straight from say, the<br>
command line or environment block, it will not be utf-8 so non-ascii<br>
characters will be mangled. That's probably best fixed by ensuring on<br>
GooString construction that it's converted to utf-8 but at present<br>
that's entirely unvalidated.<br>
<br>
Also:<br>
<br>
 #ifdef VMS<br>
-    f = fopen(fileName->getCString(), "rb", "ctx=stm");<br>
+    f = openFile(fileName->getCString(<wbr>), "rb", "ctx=stm");<br>
 #else<br>
-    f = fopen(fileName->getCString(), "rb");<br>
+    f = openFile(fileName->getCString(<wbr>), "rb");<br>
 #endif<br>
<br>
Breaks compilation on VMS (if that's still a platform that matters) as<br>
openFile takes two args only. Oddly, GooFile::open already includes<br>
this logic but openFile does not. Can just drop the first branch<br>
change for now.<br>
<br>
Martin<br>
<br>
*sort-of utf-8: gfile.cc has a pretty half-assed utf-8 to utf-16<br>
conversion algorithm in several places that only correctly handles a<br>
subset of inputs.<br>
______________________________<wbr>_________________<br>
poppler mailing list<br>
<a href="mailto:poppler@lists.freedesktop.org" target="_blank">poppler@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/poppler" id="m_5940757279149968482m_738437046425441133LPlnk301186" class="m_5940757279149968482m_738437046425441133OWAAutoLink" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/poppler</a>
</div></div><div id="m_5940757279149968482m_738437046425441133LPBorder_GT_15298754333050.6659877018342264" style="margin-bottom:20px;overflow:auto;width:100%;text-indent:0px">
<table id="m_5940757279149968482m_738437046425441133LPContainer_15298754333020.3046620153772779" style="width:90%;background-color:rgb(255,255,255);overflow:auto;padding-top:20px;padding-bottom:20px;margin-top:20px;border-top:1px dotted rgb(200,200,200);border-bottom:1px dotted rgb(200,200,200)" cellspacing="0">
<tbody>
<tr style="border-spacing:0px" valign="top">
<td id="m_5940757279149968482m_738437046425441133TextCell_15298754333030.5997815705012488" colspan="2" style="vertical-align:top;padding:0px;display:table-cell">
<div id="m_5940757279149968482m_738437046425441133LPRemovePreviewContainer_15298754333030.751505296069334"></div>
<div id="m_5940757279149968482m_738437046425441133LPTitle_15298754333030.7181755810847585" style="color:rgb(0,120,215);font-weight:400;font-size:21px;font-family:wf_segoe-ui_light,"Segoe UI Light","Segoe WP Light","Segoe UI","Segoe WP",Tahoma,Arial,sans-serif;line-height:21px">
<a id="m_5940757279149968482m_738437046425441133LPUrlAnchor_15298754333030.330377264354641" href="https://lists.freedesktop.org/mailman/listinfo/poppler" style="text-decoration:none" target="_blank">poppler Info Page - freedesktop.org</a></div>
<div id="m_5940757279149968482m_738437046425441133LPMetadata_15298754333030.675304897490911" style="margin:10px 0px 16px;color:rgb(102,102,102);font-weight:400;font-family:wf_segoe-ui_normal,"Segoe UI","Segoe WP",Tahoma,Arial,sans-serif;font-size:14px;line-height:14px">
<a href="http://lists.freedesktop.org" target="_blank">lists.freedesktop.org</a></div>
<div id="m_5940757279149968482m_738437046425441133LPDescription_15298754333040.6094931634005731" style="display:block;color:rgb(102,102,102);font-weight:400;font-family:wf_segoe-ui_normal,"Segoe UI","Segoe WP",Tahoma,Arial,sans-serif;font-size:14px;line-height:20px;max-height:100px;overflow:hidden">
Subscribing to poppler: Subscribe to poppler by filling out the following form. Use of all <a href="http://freedesktop.org" target="_blank">freedesktop.org</a> lists is subject to our Code of Conduct.</div>
</td>
</tr>
</tbody>
</table>
</div>
<br>
<br>
</div>
</span></font></div>
</div>
</div>
</div>

<br>______________________________<wbr>_________________<br>
poppler mailing list<br>
<a href="mailto:poppler@lists.freedesktop.org" target="_blank">poppler@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/poppler" rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/poppler</a><br>
<br></blockquote></div><br></div></div>