[ https://issues.apache.org/jira/browse/HDFS-16667?focusedWorklogId=792371&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-792371 ]
ASF GitHub Bot logged work on HDFS-16667: ----------------------------------------- Author: ASF GitHub Bot Created on: 18/Jul/22 22:07 Start Date: 18/Jul/22 22:07 Worklog Time Spent: 10m Work Description: goiri commented on code in PR #4576: URL: https://github.com/apache/hadoop/pull/4576#discussion_r923899967 ########## hadoop-hdfs-project/hadoop-hdfs-native-client/src/main/native/libhdfspp/third_party/uriparser2/uriparser2/uriparser2.c: ########## @@ -71,9 +71,11 @@ static const char *copy_path(const UriPathSegmentA *ps, char **buffer) { static int parse_int(const char *first, const char *after_last) { const int size = after_last - first; if (size) { - char buffer[size + 1]; + char* buffer = (char*) malloc(size + 1); Review Comment: Isn't the compiler being too pedantic? The old code should be safe. Issue Time Tracking ------------------- Worklog Id: (was: 792371) Time Spent: 0.5h (was: 20m) > Use malloc for buffer allocation in uriparser2 > ---------------------------------------------- > > Key: HDFS-16667 > URL: https://issues.apache.org/jira/browse/HDFS-16667 > Project: Hadoop HDFS > Issue Type: Bug > Components: libhdfs++ > Affects Versions: 3.4.0 > Environment: Windows 10 > Reporter: Gautham Banasandra > Assignee: Gautham Banasandra > Priority: Major > Labels: libhdfscpp, pull-request-available > Time Spent: 0.5h > Remaining Estimate: 0h > > Currently, a variable is used to specify the array size in *uriparser2* - > https://github.com/apache/hadoop/blob/34e548cb62ed21c5bba7a82f5f1489ca6bdfb8c4/hadoop-hdfs-project/hadoop-hdfs-native-client/src/main/native/libhdfspp/third_party/uriparser2/uriparser2/uriparser2.c#L71-L79 > {code:cpp} > static int parse_int(const char *first, const char *after_last) { > const int size = after_last - first; > if (size) { > char buffer[size + 1]; > memcpyz(buffer, first, size); > return atoi(buffer); > } > return 0; > } > {code} > This results in the following error on Windows - > {code} > H:\hadoop-hdfs-project\hadoop-hdfs-native-client\src\out\build\x64-Debug\cl : > command line warning D9025: overriding '/W4' with '/w' > uriparser2.c > H:\hadoop-hdfs-project\hadoop-hdfs-native-client\src\main\native\libhdfspp\third_party\uriparser2\uriparser2\uriparser2.c(74,23): > error C2057: expected constant expression > H:\hadoop-hdfs-project\hadoop-hdfs-native-client\src\main\native\libhdfspp\third_party\uriparser2\uriparser2\uriparser2.c(74,23): > error C2466: cannot allocate an array of constant size 0 > H:\hadoop-hdfs-project\hadoop-hdfs-native-client\src\main\native\libhdfspp\third_party\uriparser2\uriparser2\uriparser2.c(74,24): > error C2133: 'buffer': unknown size > {code} > Thus, we need to use malloc to fix this. -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org