diff mbox

[10/13] qerror: deref once in qerror_report()

Message ID 1382058681-14957-11-git-send-email-xiawenc@linux.vnet.ibm.com
State New
Headers show

Commit Message

Wayne Xia Oct. 18, 2013, 1:11 a.m. UTC
Signed-off-by: Wenchao Xia <xiawenc@linux.vnet.ibm.com>
---
 qobject/qerror.c |    1 -
 1 files changed, 0 insertions(+), 1 deletions(-)

Comments

Paolo Bonzini Oct. 18, 2013, 9:46 a.m. UTC | #1
Il 18/10/2013 03:11, Wenchao Xia ha scritto:
> Signed-off-by: Wenchao Xia <xiawenc@linux.vnet.ibm.com>
> ---
>  qobject/qerror.c |    1 -
>  1 files changed, 0 insertions(+), 1 deletions(-)
> 
> diff --git a/qobject/qerror.c b/qobject/qerror.c
> index 5b487f3..685167a 100644
> --- a/qobject/qerror.c
> +++ b/qobject/qerror.c
> @@ -77,7 +77,6 @@ static void qerror_print(QError *qerror)
>      loc_push_restore(&qerror->loc);
>      error_report("%s", qstring_get_str(qstring));
>      loc_pop(&qerror->loc);
> -    QDECREF(qstring);
>  }
>  
>  void qerror_report(ErrorClass eclass, const char *fmt, ...)
> 

Why isn't this a memory leak?

Paolo
Wayne Xia Oct. 21, 2013, 3:35 a.m. UTC | #2
于 2013/10/18 17:46, Paolo Bonzini 写道:
> Il 18/10/2013 03:11, Wenchao Xia ha scritto:
>> Signed-off-by: Wenchao Xia <xiawenc@linux.vnet.ibm.com>
>> ---
>>   qobject/qerror.c |    1 -
>>   1 files changed, 0 insertions(+), 1 deletions(-)
>>
>> diff --git a/qobject/qerror.c b/qobject/qerror.c
>> index 5b487f3..685167a 100644
>> --- a/qobject/qerror.c
>> +++ b/qobject/qerror.c
>> @@ -77,7 +77,6 @@ static void qerror_print(QError *qerror)
>>       loc_push_restore(&qerror->loc);
>>       error_report("%s", qstring_get_str(qstring));
>>       loc_pop(&qerror->loc);
>> -    QDECREF(qstring);
>>   }
>>   
>>   void qerror_report(ErrorClass eclass, const char *fmt, ...)
>>
> Why isn't this a memory leak?
>
> Paolo
>
My bad, I mistake QDECREF(qstring) as QDECREF(qerror), will drop this 
path, sorry to disturb.
diff mbox

Patch

diff --git a/qobject/qerror.c b/qobject/qerror.c
index 5b487f3..685167a 100644
--- a/qobject/qerror.c
+++ b/qobject/qerror.c
@@ -77,7 +77,6 @@  static void qerror_print(QError *qerror)
     loc_push_restore(&qerror->loc);
     error_report("%s", qstring_get_str(qstring));
     loc_pop(&qerror->loc);
-    QDECREF(qstring);
 }
 
 void qerror_report(ErrorClass eclass, const char *fmt, ...)