Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

my xchm patches

2009-12-02
2013-02-12
  • Kuang-che Wu
    Kuang-che Wu
    2009-12-02

    Dear all,

    I am trying build my own xchm win32 binary and fix some bugs for it.
    Here is my attempt as patchset:
            http://bitbucket.org/kcwu/xchm-patch/src/

    It is based on xchm 1.17, wx 2.90, chmlib 0.40.
    These patch files, some are wx fixes, some are xchm fixes, and some are
    just for me.

    * Files named 0* and 1* are basic steps to build xchm using VC++2008
       express. It is eaiser than using mingw :)

    * These two patches are needed to fix build
       1-buildfix-xchm: Fix issue of wxT() for msvc compiler.
       1-buildfix-xchm-wx290: fixes for wxWidgets 2.9.0

    * And some other bug fixes:
       xchm-bug-minor.diff: fix xchm minor bugs
       xchm-bug-filemtime.diff: Fix incorrect file access when try to get file time.
       xchm-bug-fontdialog.diff: fix font dialog crash due to event triggered before…

    * Performance fix:
       xchm-performance-tree.diff: fix performance issue for big chm file when close…

    * Patches related to unicode filename:
       wx-bug-fromwchar.diff: Fix FromWChar implementation.
       wx-bug-utf8uri.diff: FileNameToURL should return utf8.
       wx-bug-invalid-path.diff: access violation in wxFileName() with invalid path
       xchm-bug-unicode-filename.diff: xchm unicode filename fix

       I have submitted the patches of wx to their issue tracking system, list
       here for your reference.
       xchm-bug-unicode-filename.diff also includes patch on chmlib's open
       function.

    * The inner files of chm may also have unicode filename:
       xchm-bug-unicode-link.diff: fix for chm inner files with unicode name

    * And some others:
       xchm-ui.diff: improve xchm ui
       wx-workaround-charset.diff:

    For most of them, you can see the detail from beginning description of each file.

    Hope these changes could be merged into xchm.

    P.S. One reason I choice wx 2.9 is because 2.8's wxString::Replace is very
    slow. http://trac.wxwidgets.org/ticket/9135