diff options
author | dequis <dx@dxzone.com.ar> | 2015-04-24 17:52:55 -0300 |
---|---|---|
committer | dequis <dx@dxzone.com.ar> | 2015-04-24 17:52:55 -0300 |
commit | 1493c4b7eff51e231c65f7728c0cf84ca45cf837 (patch) | |
tree | 163e1fbfb01c06b09136e105d7dc850e5e883c98 | |
parent | 71074ac7e43cfaf9b479e14de70b7d2bb48af806 (diff) |
oauth: fix use-after-free of the ->next of the list
Third time's the charm.
Previous attempt fixed something and broke something else. Whatever.
Definitely valgrind clean this time.
-rw-r--r-- | lib/oauth.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/oauth.c b/lib/oauth.c index 005d76c4..71a7f862 100644 --- a/lib/oauth.c +++ b/lib/oauth.c @@ -95,13 +95,14 @@ void oauth_params_add(GSList **params, const char *key, const char *value) void oauth_params_del(GSList **params, const char *key) { int key_len = strlen(key); - GSList *l; + GSList *l, *n; if (!params) { return; } - for (l = *params; l; l = l->next) { + for (l = *params; l; l = n) { + n = l->next; char *data = l->data; if (strncmp(data, key, key_len) == 0 && data[key_len] == '=') { |