<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Jul 26, 2020 at 6:42 AM Troy A. Griffitts <<a href="mailto:scribe@crosswire.org">scribe@crosswire.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
  
    
  
  <div>
    <p>I've just committed the last bit for fixing the WIN32 Unicode
      issues.  If anyone can try compiling and running Xiphos without
      the Xiphos patch or any other projects for Windows, and let me
      know if things work for them in folders which include Unicode
      character, I would appreciate it.  I've tested BibleCS and it now
      works with a SWORD_PATH defined to /books/χαρις.  I've tested
      using and installing modules in this configuration and believe all
      the bugs are squashed, but I would love confirmation from other
      projects.</p>
    <p>Thanks for any feedback,</p>
    <p>Troy</p></div></blockquote><div>During cross-compile I'm getting the following errors:</div><div><br></div><div>[  6%] Building CXX object CMakeFiles/sword.dir/src/mgr/filemgr.cpp.obj<br>/usr/bin/i686-w64-mingw32-g++  -DCLUCENE2 -DCURLAVAILABLE -DCURLSFTPAVAILABLE -DEXCLUDEBZIP2 -DEXCLUDEXZ -DGLOBCONFPATH=\"/usr/i686-w64-mingw32/sys-root/mingw/etc/sword.conf\" -DUSEICUREGEX -DUSELUCENE -DU_USING_ICU_NAMESPACE -D_FTPLIB_NO_COMPAT -D_ICU_ -Dsword_EXPORTS @CMakeFiles/sword.dir/includes_CXX.rsp -D_ICUSWORD_ -g3 -Wall -O0 -D_ICUSWORD_   -o CMakeFiles/sword.dir/src/mgr/filemgr.cpp.obj -c /builddir/build/BUILD/sword-1.8.900/src/mgr/filemgr.cpp<br>/builddir/build/BUILD/sword-1.8.900/src/mgr/filemgr.cpp: In static member function 'static std::vector<sword::DirEntry> sword::FileMgr::getDirList(const char*, bool, bool)':<br>/builddir/build/BUILD/sword-1.8.900/src/mgr/filemgr.cpp:395:2: error: 'WIN32_FIND_DATAW' was not declared in this scope<br>  395 |  WIN32_FIND_DATAW fileData;<br>      |  ^~~~~~~~~~~~~~~~<br>/builddir/build/BUILD/sword-1.8.900/src/mgr/filemgr.cpp:398:2: error: 'HANDLE' was not declared in this scope<br>  398 |  HANDLE findIterator = FindFirstFileW(wcharPath, &fileData);<br>      |  ^~~~~~<br>/builddir/build/BUILD/sword-1.8.900/src/mgr/filemgr.cpp:399:6: error: 'findIterator' was not declared in this scope<br>  399 |  if (findIterator != INVALID_HANDLE_VALUE) {<br>      |      ^~~~~~~~~~~~<br>/builddir/build/BUILD/sword-1.8.900/src/mgr/filemgr.cpp:399:22: error: 'INVALID_HANDLE_VALUE' was not declared in this scope<br>  399 |  if (findIterator != INVALID_HANDLE_VALUE) {<br>      |                      ^~~~~~~~~~~~~~~~~~~~<br>/builddir/build/BUILD/sword-1.8.900/src/mgr/filemgr.cpp:401:35: error: 'fileData' was not declared in this scope<br>  401 |    SWBuf dirEntName = wcharToUTF8(fileData.cFileName);<br>      |                                   ^~~~~~~~<br>/builddir/build/BUILD/sword-1.8.900/src/mgr/filemgr.cpp:405:49: error: 'FILE_ATTRIBUTE_DIRECTORY' was not declared in this scope<br>  405 |     i.isDirectory = fileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY;<br>      |                                                 ^~~~~~~~~~~~~~~~~~~~~~~~<br>/builddir/build/BUILD/sword-1.8.900/src/mgr/filemgr.cpp:409:40: error: 'fileData' was not declared in this scope<br>  409 |   } while (FindNextFile(findIterator, &fileData) != 0);<br>      |                                        ^~~~~~~~<br>/builddir/build/BUILD/sword-1.8.900/src/mgr/filemgr.cpp:409:12: error: 'FindNextFile' was not declared in this scope<br>  409 |   } while (FindNextFile(findIterator, &fileData) != 0);<br>      |            ^~~~~~~~~~~~<br>/builddir/build/BUILD/sword-1.8.900/src/mgr/filemgr.cpp:410:3: error: 'FindClose' was not declared in this scope; did you mean '_findclose'?<br>  410 |   FindClose(findIterator);<br>      |   ^~~~~~~~~<br>      |   _findclose<br>/builddir/build/BUILD/sword-1.8.900/src/mgr/filemgr.cpp:397:17: warning: unused variable 'wcharPath' [-Wunused-variable]<br>  397 |  const wchar_t *wcharPath = (const wchar_t *)wcharBuf.getRawData();<br>      |                 ^~~~~~~~~<br>/builddir/build/BUILD/sword-1.8.900/src/mgr/filemgr.cpp: In static member function 'static int sword::FileMgr::createParent(const char*)':<br>/builddir/build/BUILD/sword-1.8.900/src/mgr/filemgr.cpp:436:5: error: '_wmkdir' was not declared in this scope; did you mean 'mkdir'?<br>  436 |     _wmkdir((const wchar_t *)utf8ToWChar(buf).getRawData());<br>      |     ^~~~~~~<br>      |     mkdir<br>make[2]: *** [CMakeFiles/sword.dir/build.make:283: CMakeFiles/sword.dir/src/mgr/filemgr.cpp.obj] Error 1</div><div><br></div><div>I'm assuming there's a new package or macro I need to define? On my system the WIN32_FIND_DATAW struct is defined in both minwinbase.h and shtypes.h. I'm building with MinGW which might have a different header structure than your compilers, if you're using Borland?</div><div><br></div><div>--Greg<br> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>
    <p><br>
    </p>
    <div>On 7/20/20 7:18 PM, Greg Hellings
      wrote:<br>
    </div>
    <blockquote type="cite">
      
      <div dir="ltr">
        <div>Sorry for the previous blank email - user error when I
          tried to reply:<br>
        </div>
        <br>
        <div class="gmail_quote">
          <div dir="ltr" class="gmail_attr">On Sun, Jul 19, 2020 at 2:40
            PM Tobias Klein <<a href="mailto:contact@tklein.info" target="_blank">contact@tklein.info</a>> wrote:<br>
          </div>
          <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
            <div lang="DE">
              <div>
                <p class="MsoNormal"><span lang="EN-US">Thanks for
                    giving me the background on this, Karl! I appreciate
                    it!</span></p>
                <p class="MsoNormal"><span lang="EN-US">Is Xiphos the
                    only frontend that has been patching Sword for this
                    purpose? Then I suppose all other frontends suffer
                    from this issue, huh?</span></p>
              </div>
            </div>
          </blockquote>
          <div><br>
          </div>
          <div>When I first encountered this patch in Xiphos I tested
            with BibleTime and The Sword Project for Windows and both of
            them do crash under these circumstances.</div>
          <div><br>
          </div>
          <div>Yes, other toolkits such as Qt do have wrappers for this
            shortcoming already, but none of the other front ends I've
            worked with have bothered to put in the effort to produce a
            patched version of Sword to fix the crash.</div>
          <div><br>
          </div>
          <div>--Greg</div>
        </div>
      </div>
      <br>
      <fieldset></fieldset>
      <pre>_______________________________________________
sword-devel mailing list: <a href="mailto:sword-devel@crosswire.org" target="_blank">sword-devel@crosswire.org</a>
<a href="http://www.crosswire.org/mailman/listinfo/sword-devel" target="_blank">http://www.crosswire.org/mailman/listinfo/sword-devel</a>
Instructions to unsubscribe/change your settings at above page</pre>
    </blockquote>
  </div>

_______________________________________________<br>
sword-devel mailing list: <a href="mailto:sword-devel@crosswire.org" target="_blank">sword-devel@crosswire.org</a><br>
<a href="http://www.crosswire.org/mailman/listinfo/sword-devel" rel="noreferrer" target="_blank">http://www.crosswire.org/mailman/listinfo/sword-devel</a><br>
Instructions to unsubscribe/change your settings at above page</blockquote></div></div>