... | ... |
@@ -314,7 +314,7 @@ static int cab_chkname( |
314 | 314 |
sys->message(NULL, "cab_chkname: File name contains disallowed characters"); |
315 | 315 |
return 1; |
316 | 316 |
} |
317 |
- else if (san && !isalnum(name[i])) |
|
317 |
+ else if (san && ((name[i] < -1 || name[i] > 255) || !isalnum((unsigned char*)name[i]))) |
|
318 | 318 |
{ |
319 | 319 |
name[i] = '*'; |
320 | 320 |
} |