Patchwork [17/18] path.c fix warning with _FORTIFY_SOURCE

login
register
mail settings
Submitter Kirill A. Shutemov
Date Dec. 20, 2009, 1:39 a.m.
Message ID <1261273167-3240-17-git-send-email-kirill@shutemov.name>
Download mbox | patch
Permalink /patch/41503/
State New
Headers show

Comments

Kirill A. Shutemov - Dec. 20, 2009, 1:39 a.m.
CC    libuser/path.o
cc1: warnings being treated as errors
/usr/src/RPM/BUILD/qemu-0.11.92/path.c: In function 'new_entry':
/usr/src/RPM/BUILD/qemu-0.11.92/path.c:49: error: ignoring return value of 'asprintf', declared with attribute warn_unused_result
make[1]: *** [path.o] Error 1

Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
---
 path.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)
Blue Swirl - Dec. 22, 2009, 8:49 p.m.
On Sun, Dec 20, 2009 at 1:39 AM, Kirill A. Shutemov
<kirill@shutemov.name> wrote:
>  CC    libuser/path.o
> cc1: warnings being treated as errors
> /usr/src/RPM/BUILD/qemu-0.11.92/path.c: In function 'new_entry':
> /usr/src/RPM/BUILD/qemu-0.11.92/path.c:49: error: ignoring return value of 'asprintf', declared with attribute warn_unused_result
> make[1]: *** [path.o] Error 1
>
> Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
> ---
>  path.c |    5 ++++-
>  1 files changed, 4 insertions(+), 1 deletions(-)
>
> diff --git a/path.c b/path.c
> index cc9e007..0d2bf14 100644
> --- a/path.c
> +++ b/path.c
> @@ -46,7 +46,10 @@ static struct pathelem *new_entry(const char *root,
>  {
>     struct pathelem *new = malloc(sizeof(*new));
>     new->name = strdup(name);
> -    asprintf(&new->pathname, "%s/%s", root, name);
> +    if (asprintf(&new->pathname, "%s/%s", root, name) == -1) {
> +        printf("Cannot allocate memory\n");
> +        exit(1);
> +    }
>     new->num_entries = 0;
>     return new;
>  }

Looks OK.

Patch

diff --git a/path.c b/path.c
index cc9e007..0d2bf14 100644
--- a/path.c
+++ b/path.c
@@ -46,7 +46,10 @@  static struct pathelem *new_entry(const char *root,
 {
     struct pathelem *new = malloc(sizeof(*new));
     new->name = strdup(name);
-    asprintf(&new->pathname, "%s/%s", root, name);
+    if (asprintf(&new->pathname, "%s/%s", root, name) == -1) {
+        printf("Cannot allocate memory\n");
+        exit(1);
+    }
     new->num_entries = 0;
     return new;
 }