[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <09569170-b800-dfca-8267-d0c2a23df85b@gmail.com>
Date: Thu, 27 Apr 2017 11:52:14 +0900
From: Taeung Song <treeze.taeung@...il.com>
To: Steven Rostedt <rostedt@...dmis.org>
Cc: linux-kernel@...r.kernel.org
Subject: Re: [PATCH] plugin python: Adjust the handling after PyRun_String()
failed
On 04/27/2017 11:47 AM, Steven Rostedt wrote:
> On Thu, 27 Apr 2017 08:46:21 +0900
> Taeung Song <treeze.taeung@...il.com> wrote:
>
>> Even though PyRun_String() failed,
>> just 0 will be returned but we need to return -1
>> that means error status, so fix it.
>>
>> Signed-off-by: Taeung Song <treeze.taeung@...il.com>
>> ---
>> plugin_python.c | 5 +++--
>> 1 file changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/plugin_python.c b/plugin_python.c
>> index 2997679..dcfad0f 100644
>> --- a/plugin_python.c
>> +++ b/plugin_python.c
>> @@ -24,7 +24,7 @@ static int load_plugin(struct pevent *pevent, const char *path,
>> const char *name, void *data)
>> {
>> PyObject *globals = data;
>> - int err;
>> + int err, ret = 0;
>
> Hmm, we can either reuse err.
>
But return value of asprintf() can be more 1,
when it succeeded.
So I think it is better the below you said.
>> int len = strlen(path) + strlen(name) + 2;
>> int nlen = strlen(name) + 1;
>> char *full = malloc(len);
>> @@ -50,12 +50,13 @@ static int load_plugin(struct pevent *pevent, const char *path,
>> if (!res) {
>> fprintf(stderr, "failed loading %s\n", full);
>> PyErr_Print();
>> + ret = -1;
>> } else
>> Py_DECREF(res);
>>
>> free(load);
>>
>> - return 0;
>> + return ret;
>
> or do a: return res ? 0 : -1;
>
> -- Steve
>
Okey! I'll resent the patch after modifying this!
Thanks,
Taeung
Powered by blists - more mailing lists