if (!strSuffix(top_dir, "/"))
return ZIP_FILE_ERROR_DIR_NOT_FOUND;
- // get path of extracted top level directory
- top_dir_path = getPath2(directory, top_dir);
-
- // remove trailing directory separator from top level directory path
- // (required to be able to check for file and directory in next step)
- top_dir_path[strlen(top_dir_path) - 1] = '\0';
-
- // check if zip file's top level directory already exists in target directory
- if (fileExists(top_dir_path)) // (checks for file and directory)
- return ZIP_FILE_ERROR_DIR_EXISTS;
-
// get filename of configuration file in top level directory
top_dir_conf_filename = getStringCat2(top_dir, conf_basename);
if (!found_top_dir_conf_filename)
return ZIP_FILE_ERROR_CONF_NOT_FOUND;
+ // zip file seems valid -- now check if included directory already exists
+
+ // get path of extracted top level directory
+ top_dir_path = getPath2(directory, top_dir);
+
+ // remove trailing directory separator from top level directory path
+ // (required to be able to check for file and directory in next step)
+ top_dir_path[strlen(top_dir_path) - 1] = '\0';
+
+ // check if zip file's top level directory already exists in target directory
+ if (fileExists(top_dir_path)) // (checks for file and directory)
+ return ZIP_FILE_ERROR_DIR_EXISTS;
+
return ZIP_FILE_OK;
}