windows: fix(workaround) illegal instruction in release build

This commit is contained in:
nillerusr 2022-12-17 10:14:49 +03:00
parent af8c358ce9
commit ff2211f0ad
2 changed files with 10 additions and 3 deletions

View File

@ -46,7 +46,7 @@ jobs:
steps:
- uses: actions/checkout@v2
- name: Build windows-i386
- name: Build windows-amd64
run: |
git submodule init && git submodule update
./waf.bat configure -T debug -8

View File

@ -322,10 +322,17 @@ int ParseDirective( const char *pText )
{
if ( ParseFloats( pText, tempFloat, 4 ) )
{
for ( int i = 0; i < 4; ++i )
// that's original code, msvc2015 generates illegal instruction on amd64 architecture
/*for ( int i = 0; i < 4; ++i )
{
gMessageParms.boxcolor[ i ] = (byte)(int)tempFloat[ i ];
}
}*/
// workaround
gMessageParms.boxcolor[0] = (int)tempFloat[0];
gMessageParms.boxcolor[1] = (int)tempFloat[1];
gMessageParms.boxcolor[2] = (int)tempFloat[2];
gMessageParms.boxcolor[3] = (int)tempFloat[3];
}
}
else if ( IsToken( pText, "clearmessage" ) )