Patchwork [1/4] qjson: Improve debugging

login
register
mail settings
Submitter Luiz Capitulino
Date Feb. 8, 2010, 7:01 p.m.
Message ID <1265655690-6628-2-git-send-email-lcapitulino@redhat.com>
Download mbox | patch
Permalink /patch/44812/
State New
Headers show

Comments

Luiz Capitulino - Feb. 8, 2010, 7:01 p.m.
Add an assert() to qobject_from_jsonf() to assure that the returned
QObject is not NULL. Currently this is duplicated in the callers.

Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
---
 qjson.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)
Anthony Liguori - Feb. 10, 2010, 9:41 p.m.
On 02/08/2010 01:01 PM, Luiz Capitulino wrote:
> Add an assert() to qobject_from_jsonf() to assure that the returned
> QObject is not NULL. Currently this is duplicated in the callers.
>
> Signed-off-by: Luiz Capitulino<lcapitulino@redhat.com>
>    

Applied all.  Thanks.

Regards,

Anthony Liguori

> ---
>   qjson.c |    5 +++++
>   1 files changed, 5 insertions(+), 0 deletions(-)
>
> diff --git a/qjson.c b/qjson.c
> index 9ad8a91..483c667 100644
> --- a/qjson.c
> +++ b/qjson.c
> @@ -53,6 +53,10 @@ QObject *qobject_from_json(const char *string)
>       return qobject_from_jsonv(string, NULL);
>   }
>
> +/*
> + * IMPORTANT: This function aborts on error, thus it must not
> + * be used with untrusted arguments.
> + */
>   QObject *qobject_from_jsonf(const char *string, ...)
>   {
>       QObject *obj;
> @@ -62,6 +66,7 @@ QObject *qobject_from_jsonf(const char *string, ...)
>       obj = qobject_from_jsonv(string,&ap);
>       va_end(ap);
>
> +    assert(obj != NULL);
>       return obj;
>   }
>
>

Patch

diff --git a/qjson.c b/qjson.c
index 9ad8a91..483c667 100644
--- a/qjson.c
+++ b/qjson.c
@@ -53,6 +53,10 @@  QObject *qobject_from_json(const char *string)
     return qobject_from_jsonv(string, NULL);
 }
 
+/*
+ * IMPORTANT: This function aborts on error, thus it must not
+ * be used with untrusted arguments.
+ */
 QObject *qobject_from_jsonf(const char *string, ...)
 {
     QObject *obj;
@@ -62,6 +66,7 @@  QObject *qobject_from_jsonf(const char *string, ...)
     obj = qobject_from_jsonv(string, &ap);
     va_end(ap);
 
+    assert(obj != NULL);
     return obj;
 }