Use 'int' to store the return value of getopt(), rather than char.
On some architectures (powerpc), char is unsigned by default, which means comparisons against -1 always fail, so the programs get stuck in an infinite loop. MFC after: 1 week
This commit is contained in:
parent
de950c79f3
commit
59d74a351f
@ -778,7 +778,8 @@ main(int argc, char **argv)
|
||||
#endif
|
||||
int err;
|
||||
int opt_C = 0, opt_H = 0, opt_p = 0, opt_v = 0;
|
||||
char c, *p, *end;
|
||||
int c;
|
||||
char *p, *end;
|
||||
struct sigaction act;
|
||||
int done = 0;
|
||||
|
||||
|
@ -2011,7 +2011,7 @@ zfs_do_upgrade(int argc, char **argv)
|
||||
boolean_t showversions = B_FALSE;
|
||||
int ret = 0;
|
||||
upgrade_cbdata_t cb = { 0 };
|
||||
char c;
|
||||
int c;
|
||||
int flags = ZFS_ITER_ARGS_CAN_BE_PATHS;
|
||||
|
||||
/* check options */
|
||||
@ -3561,7 +3561,7 @@ static int
|
||||
zfs_do_snapshot(int argc, char **argv)
|
||||
{
|
||||
int ret = 0;
|
||||
char c;
|
||||
int c;
|
||||
nvlist_t *props;
|
||||
snap_cbdata_t sd = { 0 };
|
||||
boolean_t multiple_snaps = B_FALSE;
|
||||
|
Loading…
Reference in New Issue
Block a user