msi: Handle the sign properly when converting integer data.
This commit is contained in:
parent
1b256f2c6e
commit
9187951ac7
|
@ -1762,7 +1762,13 @@ static UINT* msi_record_to_row( MSITABLEVIEW *tv, MSIRECORD *rec )
|
|||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
data[i] = MSI_RecordGetInteger( rec, i+1 );
|
||||
if ((tv->columns[i].type&0xff) == 2)
|
||||
data[i] += 0x8000;
|
||||
else
|
||||
data[i] += 0x80000000;
|
||||
}
|
||||
}
|
||||
return data;
|
||||
}
|
||||
|
|
|
@ -1913,7 +1913,7 @@ static void test_try_transform(void)
|
|||
hrec = 0;
|
||||
query = "select `NOO`,`OOO` from `MOO` where `NOO` = 1 AND `OOO` = 'c'";
|
||||
r = do_query(hdb, query, &hrec);
|
||||
todo_wine ok(r == ERROR_SUCCESS, "select query failed\n");
|
||||
ok(r == ERROR_SUCCESS, "select query failed\n");
|
||||
MsiCloseHandle(hrec);
|
||||
|
||||
/* check unchanged value */
|
||||
|
@ -1927,7 +1927,7 @@ static void test_try_transform(void)
|
|||
hrec = 0;
|
||||
query = "select * from `MOO` where `NOO` = 3";
|
||||
r = do_query(hdb, query, &hrec);
|
||||
todo_wine ok(r == ERROR_NO_MORE_ITEMS, "select query failed\n");
|
||||
ok(r == ERROR_NO_MORE_ITEMS, "select query failed\n");
|
||||
if (hrec) MsiCloseHandle(hrec);
|
||||
|
||||
MsiCloseHandle( hdb );
|
||||
|
|
Loading…
Reference in New Issue