| 
					
				 | 
			
			
				@@ -509,10 +509,10 @@ mg_handle_form_data(struct mg_connection *conn, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			                                      sizeof(path) - 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			                                      fdh); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			next = strstr(hbuf, "--"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			while (next && (strncmp(next + 2, boundary, bl))) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			next = strstr(hbuf, "\r\n--"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			while (next && (strncmp(next + 4, boundary, bl))) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				/* found "--" not followed by boundary: look for next "--" */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				next = strstr(next + 1, "--"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				next = strstr(next + 1, "\r\n--"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			if (disposition == FORM_DISPOSITION_GET) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -527,8 +527,8 @@ mg_handle_form_data(struct mg_connection *conn, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				                      (size_t)(nend - nbeg), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				                      fbeg, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				                      (size_t)(fend - fbeg), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				                      hend, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				                      (size_t)(next - hend), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				                      hend + 4, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				                      (size_t)(next - hend - 4), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				                      fdh); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -550,7 +550,7 @@ mg_handle_form_data(struct mg_connection *conn, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			/* Remove from the buffer */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			used = next - buf; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			used = next - buf + 2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			memmove(buf, buf + (size_t)used, sizeof(buf) - (size_t)used); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			buf_fill -= used; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 |