mirror of
https://github.com/postgres/postgres.git
synced 2025-07-28 23:42:10 +03:00
Standardize treatment of strcmp() return value
Always compare the return value to 0, don't use cute tricks like if (!strcmp(...)).
This commit is contained in:
@ -97,19 +97,19 @@ get_float8_nan(void)
|
||||
static bool
|
||||
check_special_value(char *ptr, double *retval, char **endptr)
|
||||
{
|
||||
if (!pg_strncasecmp(ptr, "NaN", 3))
|
||||
if (pg_strncasecmp(ptr, "NaN", 3) == 0)
|
||||
{
|
||||
*retval = get_float8_nan();
|
||||
*endptr = ptr + 3;
|
||||
return true;
|
||||
}
|
||||
else if (!pg_strncasecmp(ptr, "Infinity", 8))
|
||||
else if (pg_strncasecmp(ptr, "Infinity", 8) == 0)
|
||||
{
|
||||
*retval = get_float8_infinity();
|
||||
*endptr = ptr + 8;
|
||||
return true;
|
||||
}
|
||||
else if (!pg_strncasecmp(ptr, "-Infinity", 9))
|
||||
else if (pg_strncasecmp(ptr, "-Infinity", 9) == 0)
|
||||
{
|
||||
*retval = -get_float8_infinity();
|
||||
*endptr = ptr + 9;
|
||||
|
@ -652,7 +652,7 @@ ECPGdeallocate_desc(int line, const char *name)
|
||||
ecpg_init_sqlca(sqlca);
|
||||
for (desc = get_descriptors(), prev = NULL; desc; prev = desc, desc = desc->next)
|
||||
{
|
||||
if (!strcmp(name, desc->name))
|
||||
if (strcmp(name, desc->name) == 0)
|
||||
{
|
||||
if (prev)
|
||||
prev->next = desc->next;
|
||||
|
@ -1650,9 +1650,9 @@ ecpg_execute(struct statement * stmt)
|
||||
ecpg_log("ecpg_execute on line %d: OK: %s\n", stmt->lineno, cmdstat);
|
||||
if (stmt->compat != ECPG_COMPAT_INFORMIX_SE &&
|
||||
!sqlca->sqlerrd[2] &&
|
||||
(!strncmp(cmdstat, "UPDATE", 6)
|
||||
|| !strncmp(cmdstat, "INSERT", 6)
|
||||
|| !strncmp(cmdstat, "DELETE", 6)))
|
||||
(strncmp(cmdstat, "UPDATE", 6) == 0
|
||||
|| strncmp(cmdstat, "INSERT", 6) == 0
|
||||
|| strncmp(cmdstat, "DELETE", 6) == 0))
|
||||
ecpg_raise(stmt->lineno, ECPG_NOT_FOUND, ECPG_SQLSTATE_NO_DATA, NULL);
|
||||
break;
|
||||
case PGRES_COPY_OUT:
|
||||
|
@ -361,7 +361,7 @@ SearchStmtCache(const char *ecpgQuery)
|
||||
{
|
||||
if (stmtCacheEntries[entNo].stmtID[0]) /* check if entry is in use */
|
||||
{
|
||||
if (!strcmp(ecpgQuery, stmtCacheEntries[entNo].ecpgQuery))
|
||||
if (strcmp(ecpgQuery, stmtCacheEntries[entNo].ecpgQuery) == 0)
|
||||
break; /* found it */
|
||||
}
|
||||
++entNo; /* incr entry # */
|
||||
|
@ -106,11 +106,11 @@ drop_descriptor(char *name, char *connection)
|
||||
|
||||
for (i = descriptors; i; lastptr = &i->next, i = i->next)
|
||||
{
|
||||
if (!strcmp(name, i->name))
|
||||
if (strcmp(name, i->name) == 0)
|
||||
{
|
||||
if ((!connection && !i->connection)
|
||||
|| (connection && i->connection
|
||||
&& !strcmp(connection, i->connection)))
|
||||
&& strcmp(connection, i->connection) == 0))
|
||||
{
|
||||
*lastptr = i->next;
|
||||
if (i->connection)
|
||||
@ -135,11 +135,11 @@ lookup_descriptor(char *name, char *connection)
|
||||
|
||||
for (i = descriptors; i; i = i->next)
|
||||
{
|
||||
if (!strcmp(name, i->name))
|
||||
if (strcmp(name, i->name) == 0)
|
||||
{
|
||||
if ((!connection && !i->connection)
|
||||
|| (connection && i->connection
|
||||
&& !strcmp(connection, i->connection)))
|
||||
&& strcmp(connection, i->connection) == 0))
|
||||
return i;
|
||||
}
|
||||
}
|
||||
|
@ -102,7 +102,7 @@ ECPG: stmtViewStmt rule
|
||||
{
|
||||
const char *con = connection ? connection : "NULL";
|
||||
|
||||
if (!strcmp($1, "all"))
|
||||
if (strcmp($1, "all") == 0)
|
||||
fprintf(yyout, "{ ECPGdeallocate_all(__LINE__, %d, %s);", compat, con);
|
||||
else if ($1[0] == ':')
|
||||
fprintf(yyout, "{ ECPGdeallocate(__LINE__, %d, %s, %s);", compat, con, $1+1);
|
||||
|
@ -262,7 +262,7 @@ adjust_outofscope_cursor_vars(struct cursor *cur)
|
||||
skip_set_var = true;
|
||||
}
|
||||
else if ((ptr->variable->type->type == ECPGt_char_variable)
|
||||
&& (!strncmp(ptr->variable->name, "ECPGprepared_statement", strlen("ECPGprepared_statement"))))
|
||||
&& (strncmp(ptr->variable->name, "ECPGprepared_statement", strlen("ECPGprepared_statement")) == 0))
|
||||
{
|
||||
newvar = ptr->variable;
|
||||
skip_set_var = true;
|
||||
@ -468,7 +468,7 @@ adjust_outofscope_cursor_vars(struct cursor *cur)
|
||||
/* This tests whether the cursor was declared and opened in the same function. */
|
||||
#define SAMEFUNC(cur) \
|
||||
((cur->function == NULL) || \
|
||||
(cur->function != NULL && !strcmp(cur->function, current_function)))
|
||||
(cur->function != NULL && strcmp(cur->function, current_function) == 0))
|
||||
|
||||
static struct cursor *
|
||||
add_additional_variables(char *name, bool insert)
|
||||
|
@ -163,7 +163,7 @@ output_deallocate_prepare_statement(char *name)
|
||||
{
|
||||
const char *con = connection ? connection : "NULL";
|
||||
|
||||
if (strcmp(name, "all"))
|
||||
if (strcmp(name, "all") != 0)
|
||||
{
|
||||
fprintf(yyout, "{ ECPGdeallocate(__LINE__, %d, %s, ", compat, con);
|
||||
output_escaped_str(name, true);
|
||||
|
@ -1319,7 +1319,7 @@ parse_include(void)
|
||||
yyin = fopen(inc_file, "r");
|
||||
if (!yyin)
|
||||
{
|
||||
if (strcmp(inc_file + strlen(inc_file) - 2, ".h"))
|
||||
if (strcmp(inc_file + strlen(inc_file) - 2, ".h") != 0)
|
||||
{
|
||||
strcat(inc_file, ".h");
|
||||
yyin = fopen(inc_file, "r");
|
||||
@ -1346,7 +1346,7 @@ parse_include(void)
|
||||
yyin = fopen(inc_file, "r");
|
||||
if (!yyin)
|
||||
{
|
||||
if (strcmp(inc_file + strlen(inc_file) - 2, ".h"))
|
||||
if (strcmp(inc_file + strlen(inc_file) - 2, ".h") != 0)
|
||||
{
|
||||
strcat(inc_file, ".h");
|
||||
yyin = fopen( inc_file, "r" );
|
||||
|
@ -257,7 +257,7 @@ ECPGdump_a_type(FILE *o, const char *name, struct ECPGtype * type, const int bra
|
||||
if ((var->type->type != type->type) ||
|
||||
(var->type->type_name && !type->type_name) ||
|
||||
(!var->type->type_name && type->type_name) ||
|
||||
(var->type->type_name && type->type_name && strcmp(var->type->type_name, type->type_name)))
|
||||
(var->type->type_name && type->type_name && strcmp(var->type->type_name, type->type_name) != 0))
|
||||
mmerror(PARSE_ERROR, ET_ERROR, "variable \"%s\" is hidden by a local variable of a different type", name);
|
||||
else if (var->brace_level != brace_level)
|
||||
mmerror(PARSE_ERROR, ET_WARNING, "variable \"%s\" is hidden by a local variable", name);
|
||||
@ -271,7 +271,7 @@ ECPGdump_a_type(FILE *o, const char *name, struct ECPGtype * type, const int bra
|
||||
if ((var->type->type != ind_type->type) ||
|
||||
(var->type->type_name && !ind_type->type_name) ||
|
||||
(!var->type->type_name && ind_type->type_name) ||
|
||||
(var->type->type_name && ind_type->type_name && strcmp(var->type->type_name, ind_type->type_name)))
|
||||
(var->type->type_name && ind_type->type_name && strcmp(var->type->type_name, ind_type->type_name) != 0))
|
||||
mmerror(PARSE_ERROR, ET_ERROR, "indicator variable \"%s\" is hidden by a local variable of a different type", ind_name);
|
||||
else if (var->brace_level != ind_brace_level)
|
||||
mmerror(PARSE_ERROR, ET_WARNING, "indicator variable \"%s\" is hidden by a local variable", ind_name);
|
||||
|
@ -491,7 +491,7 @@ get_typedef(char *name)
|
||||
{
|
||||
struct typedefs *this;
|
||||
|
||||
for (this = types; this && strcmp(this->name, name); this = this->next);
|
||||
for (this = types; this && strcmp(this->name, name) != 0; this = this->next);
|
||||
if (!this)
|
||||
mmerror(PARSE_ERROR, ET_FATAL, "unrecognized data type name \"%s\"", name);
|
||||
|
||||
|
Reference in New Issue
Block a user