trace.c: In function ‘pmtracebegin’: trace.c:154: warning: comparison is always false due to limited range of data type trace.c: In function ‘pmtraceend’: trace.c:244: warning: comparison is always false due to limited range of data type trace.c: In function ‘pmtraceabort’: trace.c:307: warning: comparison is always false due to limited range of data type Index: devel-pcp-2.5.99/src/libpcp_trace/src/trace.c =================================================================== --- devel-pcp-2.5.99.orig/src/libpcp_trace/src/trace.c 2006-11-30 14:03:56.108930250 +1100 +++ devel-pcp-2.5.99/src/libpcp_trace/src/trace.c 2006-11-30 14:07:00.968483250 +1100 @@ -144,15 +144,15 @@ pmtracebegin(const char *tag) static int first = 1; _pmTraceLibdata *hptr; _pmTraceLibdata hash; - int a_sts = 0, b_sts = 0, protocol; + int len, a_sts = 0, b_sts = 0, protocol; if (tag == NULL || *tag == (char)NULL) return PMTRACE_ERR_TAGNAME; + if ((len = strlen(tag)+1) >= MAXTAGNAMELEN) + return PMTRACE_ERR_TAGLENGTH; hash.tag = (char *)tag; - hash.taglength = (unsigned int)strlen(tag)+1; - if (hash.taglength >= MAXTAGNAMELEN) - return PMTRACE_ERR_TAGLENGTH; + hash.taglength = len; hash.id = _pmtraceid(); hash.tracetype = TRACE_TYPE_TRANSACT; @@ -230,19 +230,19 @@ pmtraceend(const char *tag) _pmTraceLibdata hash; _pmTraceLibdata *hptr; struct timeval now; - int protocol, sts = 0; + int len, protocol, sts = 0; if (tag == NULL || *tag == (char)NULL) return PMTRACE_ERR_TAGNAME; + if ((len = strlen(tag)+1) >= MAXTAGNAMELEN) + return PMTRACE_ERR_TAGLENGTH; if (gettimeofday(&now, NULL) < 0) return -TRACE_ERRNO; /* give just enough info for comparison routine */ hash.tag = (char *)tag; - hash.taglength = (unsigned int)strlen(tag)+1; - if (hash.taglength >= MAXTAGNAMELEN) - return PMTRACE_ERR_TAGLENGTH; + hash.taglength = len; hash.id = _pmtraceid(); hash.tracetype = TRACE_TYPE_TRANSACT; @@ -297,15 +297,15 @@ pmtraceabort(const char *tag) { _pmTraceLibdata hash; _pmTraceLibdata *hptr; - int sts = 0; + int len, sts = 0; if (tag == NULL || *tag == (char)NULL) return PMTRACE_ERR_TAGNAME; + if ((len = strlen(tag)+1) >= MAXTAGNAMELEN) + return PMTRACE_ERR_TAGLENGTH; hash.tag = (char *)tag; - hash.taglength = (unsigned int)strlen(tag)+1; - if (hash.taglength >= MAXTAGNAMELEN) - return PMTRACE_ERR_TAGLENGTH; + hash.taglength = len; hash.id = _pmtraceid(); hash.tracetype = TRACE_TYPE_TRANSACT;