소스 검색

fix unmatched URL length

the `mg_request_info::local_uri` can be changed after `uri_len` was initialized, so its value should be recalculated before using it.
forworldm 3 년 전
부모
커밋
a487c99a31
1개의 변경된 파일1개의 추가작업 그리고 1개의 파일을 삭제
  1. 1 1
      src/civetweb.c

+ 1 - 1
src/civetweb.c

@@ -14528,7 +14528,7 @@ handle_request(struct mg_connection *conn)
 	}
 	}
 
 
 	/* 12. Directory uris should end with a slash */
 	/* 12. Directory uris should end with a slash */
-	if (file.stat.is_directory && (uri_len > 0)
+	if (file.stat.is_directory && ((uri_len = (int) strlen(ri->local_uri)) > 0)
 	    && (ri->local_uri[uri_len - 1] != '/')) {
 	    && (ri->local_uri[uri_len - 1] != '/')) {
 
 
 		size_t len = strlen(ri->request_uri);
 		size_t len = strlen(ri->request_uri);