tool_operhlp: Check for backslashes in get_url_file_name
Extract the filename from the last slash or backslash. Prior to this
change backslashes could be part of the filename.
This change needed for the curl tool built for Cygwin. Refer to the
CYGWIN addendum in advisory 20160127B.
Bug: https://curl.haxx.se/docs/adv_20160127B.html
diff --git a/src/tool_operhlp.c b/src/tool_operhlp.c
index fb344f6..b43dc95 100644
--- a/src/tool_operhlp.c
+++ b/src/tool_operhlp.c
@@ -129,7 +129,7 @@
*/
CURLcode get_url_file_name(char **filename, const char *url)
{
- const char *pc;
+ const char *pc, *pc2;
*filename = NULL;
@@ -139,7 +139,11 @@
pc += 3;
else
pc = url;
+
+ pc2 = strrchr(pc, '\\');
pc = strrchr(pc, '/');
+ if(pc2 && (!pc || pc < pc2))
+ pc = pc2;
if(pc)
/* duplicate the string beyond the slash */