Revision 8fa7f8ff

b/gss/src/gr/ebs/gss/server/rest/FilesHandler.java
153 153
        String path = getInnerPath(req, PATH_FILES);
154 154
		if (path.equals(""))
155 155
			path = "/";
156
		path = URLDecoder.decode(path, "UTF-8");
156
		try {
157
			path = URLDecoder.decode(path, "UTF-8");
158
		} catch (IllegalArgumentException e) {
159
        	resp.sendError(HttpServletResponse.SC_BAD_REQUEST, e.getMessage());
160
			return;
161
		}
157 162
    	String progress = req.getParameter(PROGRESS_PARAMETER);
158 163

  
159 164
    	if (logger.isDebugEnabled())
......
575 580
    	String moveTo = req.getParameter(RESOURCE_MOVE_PARAMETER);
576 581
    	String restoreVersion = req.getParameter(RESTORE_VERSION_PARAMETER);
577 582

  
578
    	if (newName != null)
583
    	if (newName != null) {
584
    		try {
585
    			newName = URLDecoder.decode(newName, "UTF-8");
586
    		} catch (IllegalArgumentException e) {
587
    			resp.sendError(HttpServletResponse.SC_BAD_REQUEST, e.getMessage());
588
    			return;
589
    		}
579 590
			createFolder(req, resp, path, newName);
580
		else if (hasUpdateParam)
591
    	} else if (hasUpdateParam)
581 592
			updateResource(req, resp, path);
582 593
		else if (hasTrashParam)
583 594
			trashResource(req, resp, path);
......
1188 1199
				FolderDTO folder = (FolderDTO) resource;
1189 1200
				String name = json.optString("name");
1190 1201
				if (!name.isEmpty()){
1202
					try {
1203
						name = URLDecoder.decode(name, "UTF-8");
1204
					} catch (IllegalArgumentException e) {
1205
						resp.sendError(HttpServletResponse.SC_BAD_REQUEST, e.getMessage());
1206
						return;
1207
					}
1191 1208
					getService().modifyFolder(user.getId(), folder.getId(), name);
1192 1209
					FolderDTO folderUpdated = getService().getFolder(user.getId(), folder.getId());
1193 1210
					String parentUrl =URLDecoder.decode(getContextPath(req, true),"UTF-8");

Also available in: Unified diff