On 03/10/2015 07:47 PM, Ian Romanick wrote: > On 03/10/2015 06:42 PM, Brian Paul wrote: >> We were already using strdup() in various places in Mesa. Get rid >> of the _mesa_strdup() wrapper. All the callers pass a non-NULL >> argument so the NULL check isn't needed either. >> --- >> src/mesa/main/imports.c | 18 ------------------ >> src/mesa/main/imports.h | 3 --- >> src/mesa/main/objectlabel.c | 2 +- >> src/mesa/main/shaderapi.c | 2 +- >> src/mesa/main/transformfeedback.c | 2 +- >> src/mesa/program/prog_instruction.c | 2 +- >> src/mesa/program/prog_parameter.c | 2 +- >> src/mesa/program/prog_statevars.c | 2 +- >> src/mesa/program/program.c | 6 +++--- > > A quick 'grep -lr _mesa_strdup src/ | sort' shows the following files: > > src/gallium/state_trackers/glx/xlib/glx_api.c > src/mesa/drivers/x11/fakeglx.c > src/mesa/main/imports.c > src/mesa/main/imports.h > src/mesa/main/objectlabel.c > src/mesa/main/shaderapi.c > src/mesa/main/transformfeedback.c > src/mesa/program/prog_instruction.c > src/mesa/program/prog_parameter.c > src/mesa/program/program.c > src/mesa/program/prog_statevars.c > > It looks like you missed a couple: > > src/gallium/state_trackers/glx/xlib/glx_api.c > src/mesa/drivers/x11/fakeglx.c
But I guess patch 1 got the first one. >> 9 files changed, 9 insertions(+), 30 deletions(-) >> >> diff --git a/src/mesa/main/imports.c b/src/mesa/main/imports.c >> index a7ffe22..ac8deeb 100644 >> --- a/src/mesa/main/imports.c >> +++ b/src/mesa/main/imports.c >> @@ -481,24 +481,6 @@ _mesa_half_to_float(GLhalfARB val) >> /** \name String */ >> /*@{*/ >> >> -/** >> - * Implemented using malloc() and strcpy. >> - * Note that NULL is handled accordingly. >> - */ >> -char * >> -_mesa_strdup( const char *s ) >> -{ >> - if (s) { >> - size_t l = strlen(s); >> - char *s2 = malloc(l + 1); >> - if (s2) >> - strcpy(s2, s); >> - return s2; >> - } >> - else { >> - return NULL; >> - } >> -} >> >> /** Compute simple checksum/hash for a string */ >> unsigned int >> diff --git a/src/mesa/main/imports.h b/src/mesa/main/imports.h >> index 7921000..ee6b399 100644 >> --- a/src/mesa/main/imports.h >> +++ b/src/mesa/main/imports.h >> @@ -448,9 +448,6 @@ _mesa_half_is_negative(GLhalfARB h) >> return h & 0x8000; >> } >> >> -extern char * >> -_mesa_strdup( const char *s ); >> - >> extern unsigned int >> _mesa_str_checksum(const char *str); >> >> diff --git a/src/mesa/main/objectlabel.c b/src/mesa/main/objectlabel.c >> index 78df96b..aecb5b1 100644 >> --- a/src/mesa/main/objectlabel.c >> +++ b/src/mesa/main/objectlabel.c >> @@ -76,7 +76,7 @@ set_label(struct gl_context *ctx, char **labelPtr, const >> char *label, >> MAX_LABEL_LENGTH); >> >> /* null-terminated string */ >> - *labelPtr = _mesa_strdup(label); >> + *labelPtr = strdup(label); >> } >> } >> } >> diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c >> index 5731d58..3ea76af 100644 >> --- a/src/mesa/main/shaderapi.c >> +++ b/src/mesa/main/shaderapi.c >> @@ -1460,7 +1460,7 @@ read_shader(const char *fname) >> >> fclose(f); >> >> - shader = _mesa_strdup(buffer); >> + shader = strdup(buffer); >> free(buffer); >> >> return shader; >> diff --git a/src/mesa/main/transformfeedback.c >> b/src/mesa/main/transformfeedback.c >> index a3e23ce..ce678c8 100644 >> --- a/src/mesa/main/transformfeedback.c >> +++ b/src/mesa/main/transformfeedback.c >> @@ -762,7 +762,7 @@ _mesa_TransformFeedbackVaryings(GLuint program, GLsizei >> count, >> >> /* Save the new names and the count */ >> for (i = 0; i < count; i++) { >> - shProg->TransformFeedback.VaryingNames[i] = _mesa_strdup(varyings[i]); >> + shProg->TransformFeedback.VaryingNames[i] = strdup(varyings[i]); >> } >> shProg->TransformFeedback.NumVarying = count; >> >> diff --git a/src/mesa/program/prog_instruction.c >> b/src/mesa/program/prog_instruction.c >> index 6a9bcb7..f9ebe4e 100644 >> --- a/src/mesa/program/prog_instruction.c >> +++ b/src/mesa/program/prog_instruction.c >> @@ -89,7 +89,7 @@ _mesa_copy_instructions(struct prog_instruction *dest, >> memcpy(dest, src, n * sizeof(struct prog_instruction)); >> for (i = 0; i < n; i++) { >> if (src[i].Comment) >> - dest[i].Comment = _mesa_strdup(src[i].Comment); >> + dest[i].Comment = strdup(src[i].Comment); >> } >> return dest; >> } >> diff --git a/src/mesa/program/prog_parameter.c >> b/src/mesa/program/prog_parameter.c >> index 5939f6f..cdfe251 100644 >> --- a/src/mesa/program/prog_parameter.c >> +++ b/src/mesa/program/prog_parameter.c >> @@ -148,7 +148,7 @@ _mesa_add_parameter(struct gl_program_parameter_list >> *paramList, >> >> for (i = 0; i < sz4; i++) { >> struct gl_program_parameter *p = paramList->Parameters + oldNum + >> i; >> - p->Name = name ? _mesa_strdup(name) : NULL; >> + p->Name = name ? strdup(name) : NULL; >> p->Type = type; >> p->Size = size; >> p->DataType = datatype; >> diff --git a/src/mesa/program/prog_statevars.c >> b/src/mesa/program/prog_statevars.c >> index 57b25a7..0c0c87f 100644 >> --- a/src/mesa/program/prog_statevars.c >> +++ b/src/mesa/program/prog_statevars.c >> @@ -1045,7 +1045,7 @@ _mesa_program_state_string(const gl_state_index >> state[STATE_LENGTH]) >> break; >> } >> >> - return _mesa_strdup(str); >> + return strdup(str); >> } >> >> >> diff --git a/src/mesa/program/program.c b/src/mesa/program/program.c >> index 61a9e97..3c214d5 100644 >> --- a/src/mesa/program/program.c >> +++ b/src/mesa/program/program.c >> @@ -79,7 +79,7 @@ _mesa_init_program(struct gl_context *ctx) >> STATIC_ASSERT(NUM_TEXTURE_TARGETS <= (1 << 4)); >> >> ctx->Program.ErrorPos = -1; >> - ctx->Program.ErrorString = _mesa_strdup(""); >> + ctx->Program.ErrorString = strdup(""); >> >> ctx->VertexProgram.Enabled = GL_FALSE; >> ctx->VertexProgram.PointSizeEnabled = >> @@ -176,7 +176,7 @@ _mesa_set_program_error(struct gl_context *ctx, GLint >> pos, const char *string) >> free((void *) ctx->Program.ErrorString); >> if (!string) >> string = ""; >> - ctx->Program.ErrorString = _mesa_strdup(string); >> + ctx->Program.ErrorString = strdup(string); >> } >> >> >> @@ -483,7 +483,7 @@ _mesa_clone_program(struct gl_context *ctx, const struct >> gl_program *prog) >> assert(clone->Target == prog->Target); >> assert(clone->RefCount == 1); >> >> - clone->String = (GLubyte *) _mesa_strdup((char *) prog->String); >> + clone->String = (GLubyte *) strdup((char *) prog->String); >> clone->Format = prog->Format; >> clone->Instructions = _mesa_alloc_instructions(prog->NumInstructions); >> if (!clone->Instructions) { >> > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev