diff options
Diffstat (limited to 'qte/qte-2.3.7/fix-qgfxraster.patch')
-rw-r--r-- | qte/qte-2.3.7/fix-qgfxraster.patch | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/qte/qte-2.3.7/fix-qgfxraster.patch b/qte/qte-2.3.7/fix-qgfxraster.patch index e69de29bb2..0a2986bfa1 100644 --- a/qte/qte-2.3.7/fix-qgfxraster.patch +++ b/qte/qte-2.3.7/fix-qgfxraster.patch @@ -0,0 +1,30 @@ + +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- qt-2.3.7/src/kernel/qgfxraster_qws.cpp~fix-qgfxraster ++++ qt-2.3.7/src/kernel/qgfxraster_qws.cpp +@@ -3876,14 +3876,15 @@ + for( loopc2=0;loopc2<frontadd;loopc2++ ) + *(alphaptr++)=get_value_32(16,(unsigned char **)&temppos); + +- PackType temp2; +- unsigned char * cp; ++ volatile PackType temp2; ++ volatile unsigned short int * cp; + for( loopc2=0;loopc2<count;loopc2++ ) { +- temp2=*((PackType *)temppos); +- cp=(unsigned char *)&temp2; +- *(alphaptr++)=get_value_32(16,&cp); +- *(alphaptr++)=get_value_32(16,&cp); +- temppos += 2; ++ temp2=*reinterpret_cast<PackType *>(temppos); ++ cp=reinterpret_cast<volatile unsigned short int *>(&temp2); ++ *(alphaptr++)=qt_conv16ToRgb(*cp); ++ cp++; ++ *(alphaptr++)=qt_conv16ToRgb(*cp); ++ temppos += 2; + } + + for( loopc2=0;loopc2<backadd;loopc2++ ) |