Changeset 1111 for trunk


Ignore:
Timestamp:
Feb 28, 2013, 11:47:15 PM (13 years ago)
Author:
Dmitry A. Kuminov
Message:

corelib: Make sure QLibrary::load() doesn't change FPU control word.

This is known to happen on OS/2 when loading some DLLs and it causes
applications to unexpectedly crash with SIGFPE when doing some FPU
arithmetics (like division by zero).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/corelib/plugin/qlibrary_os2.cpp

    r877 r1111  
    4848#include "qfileinfo.h"
    4949#include "qdir.h"
     50
     51
    5052
    5153#ifndef QT_NO_LIBRARY
     
    100102    QByteArray attempt = QFile::encodeName(QDir::toNativeSeparators(fileName));
    101103
     104
     105
     106
     107
     108
     109
     110
     111
     112
     113
     114
    102115    APIRET rc;
    103116    char errModule[CCHMAXPATH] = { '\0' };
     
    108121        rc = DosLoadModule(errModule, sizeof(errModule), attempt, &pHnd);
    109122    }
     123
     124
     125
    110126
    111127    if (rc != NO_ERROR) {
Note: See TracChangeset for help on using the changeset viewer.