1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

Eliminate less-than-zero checks for unsigned variables

* ext/bigdecimal/bigdecimal.c, ext/digest/md5/md5.c,
  ext/json/fbuffer/fbuffer.h, ext/json/generator/generator.c:
  Eliminate less-than-zero checks for unsigned variables.
  According to section 4.1.5 of C89 standard, size_t is an unsigned
  type.  These checks were found with 'cppcheck' static analysis tool.
  [ruby-core:57117] [Feature #8890]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42920 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2013-09-12 13:37:11 +00:00
parent a6f1305380
commit 3f78d84661
5 changed files with 16 additions and 7 deletions

View file

@ -1,3 +1,12 @@
Thu Sep 12 22:37:08 2013 Anton Ovchinnikov <revolver112@gmail.com>
* ext/bigdecimal/bigdecimal.c, ext/digest/md5/md5.c,
ext/json/fbuffer/fbuffer.h, ext/json/generator/generator.c:
Eliminate less-than-zero checks for unsigned variables.
According to section 4.1.5 of C89 standard, size_t is an unsigned
type. These checks were found with 'cppcheck' static analysis tool.
[ruby-core:57117] [Feature #8890]
Thu Sep 12 21:35:46 2013 Naohisa Goto <ngotogenome@gmail.com>
* Makefile.in (libruby-static.a): change LDFLAGS order. LDFLAGS may

View file

@ -3936,7 +3936,7 @@ VpAlloc(size_t mx, const char *szVal)
}
nalloc = (ni + nf + BASE_FIG - 1) / BASE_FIG + 1; /* set effective allocation */
/* units for szVal[] */
if (mx <= 0) mx = 1;
if (mx == 0) mx = 1;
nalloc = Max(nalloc, mx);
mx = nalloc;
vp = VpAllocReal(mx);
@ -5029,7 +5029,7 @@ VpFormatSt(char *psz, size_t fFmt)
size_t ie, i, nf = 0;
char ch;
if (fFmt <= 0) return;
if (fFmt == 0) return;
ie = strlen(psz);
for (i = 0; i < ie; ++i) {
@ -6162,12 +6162,12 @@ VpVarCheck(Real * v)
{
size_t i;
if (v->MaxPrec <= 0) {
if (v->MaxPrec == 0) {
printf("ERROR(VpVarCheck): Illegal Max. Precision(=%"PRIuSIZE")\n",
v->MaxPrec);
return 1;
}
if (v->Prec <= 0 || v->Prec > v->MaxPrec) {
if (v->Prec == 0 || v->Prec > v->MaxPrec) {
printf("ERROR(VpVarCheck): Illegal Precision(=%"PRIuSIZE")\n", v->Prec);
printf(" Max. Prec.=%"PRIuSIZE"\n", v->MaxPrec);
return 2;

View file

@ -368,7 +368,7 @@ MD5_Update(MD5_CTX *pms, const uint8_t *data, size_t nbytes)
size_t offset = (pms->count[0] >> 3) & 63;
uint32_t nbits = (uint32_t)(nbytes << 3);
if (nbytes <= 0)
if (nbytes == 0)
return;
/* Update the message length. */

View file

@ -67,7 +67,7 @@ static VALUE fbuffer_to_s(FBuffer *fb);
static FBuffer *fbuffer_alloc(unsigned long initial_length)
{
FBuffer *fb;
if (initial_length <= 0) initial_length = FBUFFER_INITIAL_LENGTH_DEFAULT;
if (initial_length == 0) initial_length = FBUFFER_INITIAL_LENGTH_DEFAULT;
fb = ALLOC(FBuffer);
memset((void *) fb, 0, sizeof(FBuffer));
fb->initial_length = initial_length;

View file

@ -288,7 +288,7 @@ static void convert_UTF8_to_JSON(FBuffer *buffer, VALUE string)
static char *fstrndup(const char *ptr, unsigned long len) {
char *result;
if (len <= 0) return NULL;
if (len == 0) return NULL;
result = ALLOC_N(char, len);
memccpy(result, ptr, 0, len);
return result;