Andrew Talbot wrote: > Is there anything wrong with this patch, please? If I might venture a guess it's probably because of the casts. Casts are evil if not really needed and using casts to get rid of the sign comparison warnings is debatable at best.
> --- > Changelog: > advpack: Sign-compare warnings fix. > > diff --git a/dlls/advpack/files.c b/dlls/advpack/files.c > index 5e9ce30..43c07ea 100644 > --- a/dlls/advpack/files.c > +++ b/dlls/advpack/files.c > @@ -709,7 +709,7 @@ HRESULT WINAPI ExtractFilesA(LPCSTR CabName, LPCSTR > ExpandDir, DWORD Flags, > if (FileList) > { > szConvertedList = convert_file_list(FileList, &dwFileCount); > - if (!szConvertedList || dwFileCount == -1) > + if (!szConvertedList || (LONG)dwFileCount == -1) This one could be replaced by a comparison with either "-1u" or "~0". > { > res = E_FAIL; > goto done; > diff --git a/dlls/advpack/install.c b/dlls/advpack/install.c > index c5a5df0..05a7232 100644 > --- a/dlls/advpack/install.c > +++ b/dlls/advpack/install.c > @@ -41,7 +41,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(advpack); > #define SPAPI_MASK 0xFFFFL > #define HRESULT_FROM_SPAPI(x) ((x & SPAPI_MASK) | SPAPI_PREFIX) > > -#define ADV_HRESULT(x) ((x & SPAPI_ERROR) ? HRESULT_FROM_SPAPI(x) : > HRESULT_FROM_WIN32(x)) > +#define ADV_HRESULT(x) ((x & SPAPI_ERROR) ? HRESULT_FROM_SPAPI(x) : > (DWORD)HRESULT_FROM_WIN32(x)) > > #define ADV_SUCCESS 0 > #define ADV_FAILURE 1 > > bye michael