Skip to content

Commit bd47063

Browse files
committed
updated for version 7.3.740
Problem: IOC tool complains about undefined behavior for int. Solution: Change to unsigned int. (Dominique Pelle)
1 parent e818fc7 commit bd47063

File tree

3 files changed

+10
-8
lines changed

3 files changed

+10
-8
lines changed

src/hashtab.c

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ hash_lookup(ht, key, hash)
138138
hash_T perturb;
139139
hashitem_T *freeitem;
140140
hashitem_T *hi;
141-
int idx;
141+
unsigned idx;
142142

143143
#ifdef HT_DEBUG
144144
++hash_count_lookup;
@@ -150,7 +150,7 @@ hash_lookup(ht, key, hash)
150150
* - skip over a removed item
151151
* - return if the item matches
152152
*/
153-
idx = (int)(hash & ht->ht_mask);
153+
idx = (unsigned)(hash & ht->ht_mask);
154154
hi = &ht->ht_array[idx];
155155

156156
if (hi->hi_key == NULL)
@@ -176,7 +176,7 @@ hash_lookup(ht, key, hash)
176176
#ifdef HT_DEBUG
177177
++hash_count_perturb; /* count a "miss" for hashtab lookup */
178178
#endif
179-
idx = (int)((idx << 2) + idx + perturb + 1);
179+
idx = (unsigned)((idx << 2U) + idx + perturb + 1U);
180180
hi = &ht->ht_array[idx & ht->ht_mask];
181181
if (hi->hi_key == NULL)
182182
return freeitem == NULL ? hi : freeitem;
@@ -342,7 +342,7 @@ hash_may_resize(ht, minitems)
342342
hashitem_T temparray[HT_INIT_SIZE];
343343
hashitem_T *oldarray, *newarray;
344344
hashitem_T *olditem, *newitem;
345-
int newi;
345+
unsigned newi;
346346
int todo;
347347
long_u oldsize, newsize;
348348
long_u minsize;
@@ -448,13 +448,13 @@ hash_may_resize(ht, minitems)
448448
* the algorithm to find an item in hash_lookup(). But we only
449449
* need to search for a NULL key, thus it's simpler.
450450
*/
451-
newi = (int)(olditem->hi_hash & newmask);
451+
newi = (unsigned)(olditem->hi_hash & newmask);
452452
newitem = &newarray[newi];
453453

454454
if (newitem->hi_key != NULL)
455455
for (perturb = olditem->hi_hash; ; perturb >>= PERTURB_SHIFT)
456456
{
457-
newi = (int)((newi << 2) + newi + perturb + 1);
457+
newi = (unsigned)((newi << 2U) + newi + perturb + 1U);
458458
newitem = &newarray[newi & newmask];
459459
if (newitem->hi_key == NULL)
460460
break;

src/misc2.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3860,7 +3860,7 @@ static ulg keys[3]; /* keys defining the pseudo-random sequence */
38603860
ush temp; \
38613861
\
38623862
temp = (ush)keys[2] | 2; \
3863-
t = (int)(((unsigned)(temp * (temp ^ 1)) >> 8) & 0xff); \
3863+
t = (int)(((unsigned)(temp * (temp ^ 1U)) >> 8) & 0xff); \
38643864
}
38653865

38663866
/*
@@ -4002,7 +4002,7 @@ crypt_decode(ptr, len)
40024002
ush temp;
40034003

40044004
temp = (ush)keys[2] | 2;
4005-
temp = (int)(((unsigned)(temp * (temp ^ 1)) >> 8) & 0xff);
4005+
temp = (int)(((unsigned)(temp * (temp ^ 1U)) >> 8) & 0xff);
40064006
UPDATE_KEYS_ZIP(*p ^= temp);
40074007
}
40084008
else

src/version.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -725,6 +725,8 @@ static char *(features[]) =
725725

726726
static int included_patches[] =
727727
{ /* Add new patch number below this line */
728+
/**/
729+
740,
728730
/**/
729731
739,
730732
/**/

0 commit comments

Comments
 (0)