Fixed some issues/warnings found by clang-analyzer.
This commit is contained in:
parent
42c0766c00
commit
52fc384e4e
@ -140,6 +140,7 @@ xbps_archive_get_dictionary(struct archive *ar, struct archive_entry *entry)
|
|||||||
if (uncomp_buf == NULL) {
|
if (uncomp_buf == NULL) {
|
||||||
/* Error while decompressing */
|
/* Error while decompressing */
|
||||||
free(buf);
|
free(buf);
|
||||||
|
free(uncomp_buf);
|
||||||
return NULL;
|
return NULL;
|
||||||
} else {
|
} else {
|
||||||
/* We have the uncompressed data */
|
/* We have the uncompressed data */
|
||||||
|
@ -559,7 +559,6 @@ unpack_archive(struct xbps_handle *xhp,
|
|||||||
pkgver, strerror(rv));
|
pkgver, strerror(rv));
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
metafile = true;
|
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
* If there was any error extracting files from archive, error out.
|
* If there was any error extracting files from archive, error out.
|
||||||
|
@ -107,6 +107,8 @@ _prop_array_free(prop_stack_t stack, prop_object_t *obj)
|
|||||||
|
|
||||||
return (_PROP_OBJECT_FREE_DONE);
|
return (_PROP_OBJECT_FREE_DONE);
|
||||||
}
|
}
|
||||||
|
if (pa->pa_array == NULL)
|
||||||
|
return _PROP_OBJECT_FREE_DONE;
|
||||||
|
|
||||||
po = pa->pa_array[pa->pa_count - 1];
|
po = pa->pa_array[pa->pa_count - 1];
|
||||||
_PROP_ASSERT(po != NULL);
|
_PROP_ASSERT(po != NULL);
|
||||||
|
@ -359,6 +359,8 @@ _prop_dictionary_free(prop_stack_t stack, prop_object_t *obj)
|
|||||||
|
|
||||||
return (_PROP_OBJECT_FREE_DONE);
|
return (_PROP_OBJECT_FREE_DONE);
|
||||||
}
|
}
|
||||||
|
if (pd->pd_array == NULL)
|
||||||
|
return _PROP_OBJECT_FREE_DONE;
|
||||||
|
|
||||||
po = pd->pd_array[pd->pd_count - 1].pde_objref;
|
po = pd->pd_array[pd->pd_count - 1].pde_objref;
|
||||||
_PROP_ASSERT(po != NULL);
|
_PROP_ASSERT(po != NULL);
|
||||||
|
@ -254,8 +254,10 @@ _prop_object_externalize_footer(struct _prop_object_externalize_context *ctx)
|
|||||||
{
|
{
|
||||||
|
|
||||||
if (_prop_object_externalize_end_tag(ctx, "plist") == false ||
|
if (_prop_object_externalize_end_tag(ctx, "plist") == false ||
|
||||||
_prop_object_externalize_append_char(ctx, '\0') == false)
|
_prop_object_externalize_append_char(ctx, '\0') == false) {
|
||||||
|
free(ctx->poec_buf);
|
||||||
return (false);
|
return (false);
|
||||||
|
}
|
||||||
|
|
||||||
return (true);
|
return (true);
|
||||||
}
|
}
|
||||||
@ -816,7 +818,7 @@ _prop_object_externalize_write_file(const char *fname, const char *xml,
|
|||||||
size_t len, bool do_compress)
|
size_t len, bool do_compress)
|
||||||
{
|
{
|
||||||
gzFile gzf = NULL;
|
gzFile gzf = NULL;
|
||||||
char tname[PATH_MAX], *otname;
|
char tname[PATH_MAX];
|
||||||
int fd;
|
int fd;
|
||||||
int save_errno;
|
int save_errno;
|
||||||
mode_t myumask;
|
mode_t myumask;
|
||||||
@ -832,19 +834,10 @@ _prop_object_externalize_write_file(const char *fname, const char *xml,
|
|||||||
*/
|
*/
|
||||||
_prop_object_externalize_file_dirname(fname, tname);
|
_prop_object_externalize_file_dirname(fname, tname);
|
||||||
|
|
||||||
#ifdef HAVE_STRLCAT
|
|
||||||
if (strlcat(tname, "/.plistXXXXXX", sizeof(tname)) >= sizeof(tname)) {
|
if (strlcat(tname, "/.plistXXXXXX", sizeof(tname)) >= sizeof(tname)) {
|
||||||
errno = ENAMETOOLONG;
|
errno = ENAMETOOLONG;
|
||||||
return (false);
|
return (false);
|
||||||
}
|
}
|
||||||
#else
|
|
||||||
otname = strncat(tname, "/.plistXXXXXX", sizeof(tname) - strlen(tname) - 1);
|
|
||||||
|
|
||||||
if (sizeof(*otname) >= sizeof(tname)) {
|
|
||||||
errno = ENAMETOOLONG;
|
|
||||||
return (false);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
if ((fd = mkstemp(tname)) == -1)
|
if ((fd = mkstemp(tname)) == -1)
|
||||||
return (false);
|
return (false);
|
||||||
|
|
||||||
@ -1192,7 +1185,6 @@ prop_object_equals_with_error(prop_object_t obj1, prop_object_t obj2,
|
|||||||
&stored_pointer1, &stored_pointer2))
|
&stored_pointer1, &stored_pointer2))
|
||||||
return true;
|
return true;
|
||||||
po1 = obj1;
|
po1 = obj1;
|
||||||
po2 = obj2;
|
|
||||||
goto continue_subtree;
|
goto continue_subtree;
|
||||||
}
|
}
|
||||||
_PROP_ASSERT(ret == _PROP_OBJECT_EQUALS_RECURSE);
|
_PROP_ASSERT(ret == _PROP_OBJECT_EQUALS_RECURSE);
|
||||||
|
Loading…
Reference in New Issue
Block a user