If you are having memory allocation problems when using QtQuick with Windows CE, check QTBUG-26227



  • As the title says, I've just posted a bug report about a serious problem that happens
    when using QtQuick with Windows CE devices.

    I guess it's the same problem at the root of various issues about QML code allocating memory
    and never releasing it:
    "QTBUG-26227":https://bugreports.qt-project.org/browse/QTBUG-26227

    If you are using Qt 4.8.2 or a previous version and notice memory is allocated by QML code but never released as should be, give a look at the bug report and at the proposed fix, it may solve your problem too.



  • Ooops, I sent the previous post a little too fast.
    Of course, the problem happens only with Windows CE.



  • Thanks for that!

    Did you changed compiler settings to enable extra warnings, or just notice it during compilation? I think I'm going to go back and re-compile my WinCE DLLs and check a bit more carefully.



  • It was the first time I built Qt for Windows CE 5.0 for production devices (previously we were using only Windows CE 6.0).

    At first I was having memory allocation errors I initially supposed were caused by the 32MB limit for data and program dlls, so i forced -Os in the mkspec for the target device and inserted qDebug() messages to generate an application specific execution log about what was actually going on, after i noticed program termination happened before reaching the 32MB limit, I started combing the compilation log to see if there was something suspicious besides the usual data truncation warnings and found that weird warning about rewind() macro substitution.



  • Thanks for that I'll do a trawl through our compilation log and see if it's there. We're building using 4.7.4 so it might not show up in that release (fingers crossed).



  • Lately I rebuild some stuff using Qt 4.8.4 and discovered that the bug still exists.
    It exists in 4.8.3, too.

    The fixes added to the source code instead of "#undef rewind"
    contained "# undef rewind" (blank spaces between "#" and "undef")
    and it seems that VS2005 C++ compiler for ARM ignores that.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.