[2/3] struts git commit: WW-4583 JakartaStreamMultiPartRequest fails on short file name and on empty file input

2016-01-06 Thread amashchenko
WW-4583 JakartaStreamMultiPartRequest fails on short file name and on empty 
file input

(cherry picked from commit a4f8d492144a62af2a7d5e934e62d737bdfc8058)


Project: http://git-wip-us.apache.org/repos/asf/struts/repo
Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/9a0a0a16
Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/9a0a0a16
Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/9a0a0a16

Branch: refs/heads/support-2-3
Commit: 9a0a0a16e9a61b55d3906b9b7059ebc3356efab0
Parents: bf46145
Author: Aleksandr Mashchenko 
Authored: Wed Jan 6 19:24:56 2016 +0200
Committer: Aleksandr Mashchenko 
Committed: Wed Jan 6 19:26:18 2016 +0200

--
 .../multipart/JakartaStreamMultiPartRequest.java  | 10 ++
 1 file changed, 10 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/struts/blob/9a0a0a16/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
--
diff --git 
a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
 
b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
index 6fbd2c3..1270e07 100644
--- 
a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
+++ 
b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
@@ -392,6 +392,12 @@ public class JakartaStreamMultiPartRequest implements 
MultiPartRequest {
  * @param location
  */
 private void processFileItemStreamAsFileField(FileItemStream itemStream, 
String location) {
+// Skip file uploads that don't have a file name - meaning that no 
file was selected.
+if (itemStream.getName() == null || 
itemStream.getName().trim().length() < 1) {
+LOG.debug("No file has been uploaded for the field: {}", 
itemStream.getFieldName());
+return;
+}
+
 File file = null;
 try {
 // Create the temporary upload file.
@@ -433,6 +439,10 @@ public class JakartaStreamMultiPartRequest implements 
MultiPartRequest {
 suffix = name.substring(name.lastIndexOf('.'));
 }
 
+if (prefix.length() < 3) {
+prefix = UUID.randomUUID().toString();
+}
+
 File file = File.createTempFile(prefix + "_", suffix, new 
File(location));
 LOG.debug("Creating temporary file '#0' (originally '#1').", 
file.getName(), fileName);
 return file;



[3/3] struts git commit: Add import for UUID

2016-01-06 Thread amashchenko
Add import for UUID


Project: http://git-wip-us.apache.org/repos/asf/struts/repo
Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/b448d799
Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/b448d799
Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/b448d799

Branch: refs/heads/support-2-3
Commit: b448d79959e14fcd2c7db8103c8173d0cf5385dc
Parents: 9a0a0a1
Author: Aleksandr Mashchenko 
Authored: Wed Jan 6 19:30:12 2016 +0200
Committer: Aleksandr Mashchenko 
Committed: Wed Jan 6 19:30:12 2016 +0200

--
 .../struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/struts/blob/b448d799/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
--
diff --git 
a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
 
b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
index 1270e07..e22cee3 100644
--- 
a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
+++ 
b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
@@ -28,6 +28,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Locale;
 import java.util.Map;
+import java.util.UUID;
 
 /**
  * Multi-part form data request adapter for Jakarta Commons FileUpload package 
that



[1/3] struts git commit: WW-4583 JakartaStreamMultiPartRequest fails on short file name and on empty file input

2016-01-06 Thread amashchenko
Repository: struts
Updated Branches:
  refs/heads/master 4f29d8861 -> a4f8d4921
  refs/heads/support-2-3 bf46145ba -> b448d7995


WW-4583 JakartaStreamMultiPartRequest fails on short file name and on empty 
file input


Project: http://git-wip-us.apache.org/repos/asf/struts/repo
Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/a4f8d492
Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/a4f8d492
Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/a4f8d492

Branch: refs/heads/master
Commit: a4f8d492144a62af2a7d5e934e62d737bdfc8058
Parents: 4f29d88
Author: Aleksandr Mashchenko 
Authored: Wed Jan 6 19:24:56 2016 +0200
Committer: Aleksandr Mashchenko 
Committed: Wed Jan 6 19:24:56 2016 +0200

--
 .../multipart/JakartaStreamMultiPartRequest.java  | 10 ++
 1 file changed, 10 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/struts/blob/a4f8d492/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
--
diff --git 
a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
 
b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
index 6727f3e..f4c4665 100644
--- 
a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
+++ 
b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
@@ -384,6 +384,12 @@ public class JakartaStreamMultiPartRequest implements 
MultiPartRequest {
  * @param location location
  */
 private void processFileItemStreamAsFileField(FileItemStream itemStream, 
String location) {
+// Skip file uploads that don't have a file name - meaning that no 
file was selected.
+if (itemStream.getName() == null || 
itemStream.getName().trim().length() < 1) {
+LOG.debug("No file has been uploaded for the field: {}", 
itemStream.getFieldName());
+return;
+}
+
 File file = null;
 try {
 // Create the temporary upload file.
@@ -424,6 +430,10 @@ public class JakartaStreamMultiPartRequest implements 
MultiPartRequest {
 suffix = name.substring(name.lastIndexOf('.'));
 }
 
+if (prefix.length() < 3) {
+prefix = UUID.randomUUID().toString();
+}
+
 File file = File.createTempFile(prefix + "_", suffix, new 
File(location));
 LOG.debug("Creating temporary file '{}' (originally '{}').", 
file.getName(), fileName);
 return file;