Permalink
Commits on Jul 27, 2017
  1. Update release date in History.md

    larskanis committed Jul 27, 2017
Commits on Jul 21, 2017
  1. Update History.md

    larskanis committed Jul 21, 2017
  2. Bump VERSION to 1.6.38

    larskanis committed Jul 21, 2017
  3. Replace libjpeg-9b by libjpeg-turbo-1.5.2 for Windows

    larskanis committed Jul 21, 2017
    It is faster than libjpeg and is used in MSYS2-fox as well.
Commits on Jul 20, 2017
  1. Add build status on Windows running on appveyor.com

    larskanis committed Jul 20, 2017
Commits on Jul 19, 2017
  1. Fix compat of some tests with Windows.

    larskanis committed Jul 19, 2017
  2. Add appveyor test config

    larskanis committed Jul 19, 2017
  3. Include ruby.h only in FXRbCommon.h to make sure macros are undefined

    larskanis committed Jul 19, 2017
  4. Move include FXRbCommon.h to the front of the cpp file

    larskanis committed Jul 19, 2017
    .. to match the order in other cpp files.
    This hopefully Fixes the following build failure on FreeBSD:
    
    compiling FXRbObjRegistry.cpp
    In file included from FXRbObjRegistry.cpp:24:
    In file included from ./include/FXRbCommon.h:101:
    In file included from ./include/FXRuby.h:948:
    ./include/inlinestubs.h:80:1: error: no member named 'close' in
    'FX::FXChoiceBox'
    DECLARE_FXTOPWINDOW_STUBS(FXChoiceBox)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ./include/FXRbTopWindow.h:44:23: note: expanded from macro
    'DECLARE_FXTOPWINDOW_STUBS'
      return self->klass::close(notify); \
               ~~~~
    Fixes #41
Commits on Jul 16, 2017
  1. Add missing require statement for Date class

    larskanis committed Jul 16, 2017
Commits on Jun 24, 2017
  1. Set VERSION to 1.6.37

    larskanis committed Jun 24, 2017
Commits on Jun 16, 2017
  1. Update History.md

    larskanis committed Jun 16, 2017
  2. Bump VERSION to 1.6.37.rc1

    larskanis committed Jun 16, 2017
  3. Add a 3rd type of FXRbObjects which is used for callbacks.

    larskanis committed Jun 4, 2017
    Since commit 54a1170 we handle arguments to blocks (callbacks) as borrowed objects and decouple
    libfox objects from the corresponding FXRuby wrapper object after the call, if it's a borrowed object.
    The conflict arises when the objects is already a borrowed object and is additionally passed as block argument.
    In this case the object is deregistered at the end of the callback and accidently gets free'd by the GC later on.
    
    With block arguments as dedicated object type we can differentiate between objects wrapped for one callback only and objects that are for longer use.
    
    Fixes #39
Commits on Jun 4, 2017
  1. Update generated impl.cpp

    larskanis committed Jun 4, 2017
  2. Update History.md for 1.6.36

    larskanis committed Jun 4, 2017
  3. Bump VERSION to 1.6.36

    larskanis committed Jun 4, 2017
Commits on May 30, 2017
  1. Add msys2 library dependency tag in gem metadata.

    larskanis committed May 30, 2017
    RubyInstaller2 supports metadata tags for installation of dependent
    MSYS2/MINGW libraries. The fxruby source gem requires the fox
    package to be installed on the system, which the gem installer takes
    care about, when this tag is set.
    
    The feature is documented here:
    https://github.com/oneclick/rubyinstaller2/wiki/For-gem-developers#msys2-library-dependency
Commits on May 9, 2017
  1. Move object registry functions to it's own class.

    larskanis committed May 9, 2017
    This makes it more object orientated.
Commits on Apr 23, 2017
  1. no need to over optimize

    larskanis committed Apr 23, 2017
Commits on Apr 22, 2017
  1. Don't complain about unused functions.

    larskanis committed Apr 22, 2017
    This is by design for FXRuby.h
  2. Avoid gcc waring:

    larskanis committed Apr 22, 2017
    ../../../../ext/fox16_c/FXRuby.cpp: In function ‘VALUE FXRbConvertMessageData(FX::FXObject*, FX::FXObject*, FX::FXSelector, void*)’:
    ../../../../ext/fox16_c/FXRuby.cpp:578:17: warning: variable ‘fff’ set but not used [-Wunused-but-set-variable]
       FXInputHandle fff;
                     ^~~
  3. Avoid gcc waring:

    larskanis committed Apr 22, 2017
    ../../../../ext/fox16_c/FXRuby.cpp: In function ‘VALUE FXRbMakeColorArray(const FXColor*, FX::FXint, FX::FXint)’:
    ../../../../ext/fox16_c/FXRuby.cpp:526:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
       for(FXuint i=0; i<size; i++)
                       ~^~~~~
  4. Avoid gcc warning:

    larskanis committed Apr 22, 2017
    ../../../../ext/fox16_c/FXRuby.cpp:91:58: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
     static const char * const safe_rb_obj_classname(VALUE obj)
Commits on Apr 20, 2017
  1. Patch libfox to avoid writing to readonly memory on MINGW.

    larskanis committed Apr 19, 2017
    On a newly created string, the string pointer points to emptystring
    which is defined as static const.
    When using FXString.vformat() on it, it writes a terminating zero byte
    into emptystring at the first call to vsnprintf().
    This results in a segfault on Windows-10 like this:
    
    C:\WINDOWS\SYSTEM32\ntdll.dll(KiUserExceptionDispatcher+0x3a) [0x00007ff9ce169cba]
    C:\WINDOWS\System32\msvcrt.dll(ungetwc+0xc74) [0x00007ff9cbf1fe04]
    C:\WINDOWS\System32\msvcrt.dll(ungetwc+0xce7) [0x00007ff9cbf1fe77]
    C:\WINDOWS\System32\msvcrt.dll(ungetwc+0x880) [0x00007ff9cbf1fa10]
    C:\WINDOWS\System32\msvcrt.dll(vsnprintf_l+0x80) [0x00007ff9cbf1a750]
    C:\WINDOWS\System32\msvcrt.dll(vsnprintf+0x11) [0x00007ff9cbf1a6c1]
    C:\Ruby24-x64\lib\ruby\gems\2.4.0\gems\fxruby-1.6.35-x64-mingw32\ports\x86_64-w64-mingw32\bin\libFOX-1.6-0.dll(ZN2FX8FXString7vformatEPKcPc+0x73) [0x00000000696031bb]
    
    The invalid memory access can be avoided by checking for an empty string
    at first.
  2. Add some files to .gitignore

    larskanis committed Apr 19, 2017
Commits on Apr 19, 2017