On 15/9/20 7:04 pm, Aschref Ben-Thabet wrote: > From: Aschref Ben Thabet <aschref.ben-tha...@embedded-brains.de> > > Replace strncpy() with strdup() to silence this warning since it tries > to allocate enough memory to hold the old string (plus a '\0' character > to mark the end of the string). > --- > testsuites/psxtests/psxndbm01/init.c | 11 +++-------- > 1 file changed, 3 insertions(+), 8 deletions(-) > > diff --git a/testsuites/psxtests/psxndbm01/init.c > b/testsuites/psxtests/psxndbm01/init.c > index a13afa7315..ddcc1b5bf6 100644 > --- a/testsuites/psxtests/psxndbm01/init.c > +++ b/testsuites/psxtests/psxndbm01/init.c > @@ -217,14 +217,9 @@ rtems_task Init(rtems_task_argument ignored) > rtems_test_assert( strcmp( (const char*)get_phone_no.dptr, PHONE_NO2 ) == > 0 ); > > puts( "Fetch non-existing record and confirm error." ); > - test_strings = (char*)malloc(6); > - strncpy( test_strings, "Hello", 5 ); > - > - test_strings[5] = '\0'; > + test_strings = strdup( "Hello" ); > > /* The data pointed by test_string is now pointed by key.dptr */ > - key.dptr = test_strings; > - key.dsize = sizeof( test_strings ); > get_phone_no = dbm_fetch( db, key );
Is key now uninitialised as the assignment above have been removed? > rtems_test_assert( get_phone_no.dptr == NULL ); > dbm_close( db ); > @@ -237,10 +232,10 @@ rtems_task Init(rtems_task_argument ignored) > db = dbm_open( DB_NAME, O_RDWR, S_IRWXU ); > rtems_test_assert( db != NULL ); > > - puts( "Delete non-existing record and confirm error." ); > + /* puts( "Delete non-existing record and confirm error." ); > rtems_test_assert( dbm_delete( db, key ) != 0 ); > free( test_strings ); > - rtems_test_assert( count_no_of_records( db ) == 2); > + rtems_test_assert( count_no_of_records( db ) == 2);*/ Why is this being commented out? Does this leaking the memory from strdup? What about moving test_strings to the file scope and making it be: char test_strings[PATH_MAX]; Then remove the pair of malloc and free calls. Chris > > puts( "Delete existing record and " > "confirm that total number of records is successful 1." ); > _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel