Messages in this thread Patch in this message | | | Subject | Re: [media] ov5645: Move an error code assignment in ov5645_probe() | From | SF Markus Elfring <> | Date | Thu, 15 Mar 2018 10:34:55 +0100 |
| |
>> Move an assignment for a specific error code so that it is stored only once >> in this function implementation. >> >> This issue was detected by using the Coccinelle software. > > How?
Would you like to experiment a bit more with the following approach for the semantic patch language?
show_same_statements3.cocci:
@duplicated_code@ identifier work; statement s1, s2; type T; @@ T work(...) { ... when any *if ((...) < 0) *{ ... * s1 * s2 *} ... when any *if ((...) < 0) *{ ... * s1 * s2 *} ... when any }
>> @@ -1334,6 +1329,7 @@ static int ov5645_probe(struct i2c_client *client, >> >> power_down: >> ov5645_s_power(&ov5645->sd, false); >> + ret = -ENODEV; > > I don't think this is where people would expect you to set the error code > in general.
This can be. - The view depends on some factors.
> It should rather take place before goto, not after it.
I proposed another software design direction.
> That'd mean another variable, To which detail do you refer here?
> and I'm not convinced the result would improve the driver.
Can you see the relevance of a small code reduction in this function?
Regards, Markus
| |