diff --git a/pom.xml b/pom.xml index 515b3d87..0e5688c7 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.rarchives.ripme ripme jar - 1.0.34 + 1.0.35 ripme http://rip.rarchives.com diff --git a/src/main/java/com/rarchives/ripme/ripper/AbstractRipper.java b/src/main/java/com/rarchives/ripme/ripper/AbstractRipper.java index 3941b16e..d8955ef2 100644 --- a/src/main/java/com/rarchives/ripme/ripper/AbstractRipper.java +++ b/src/main/java/com/rarchives/ripme/ripper/AbstractRipper.java @@ -290,9 +290,11 @@ public abstract class AbstractRipper rip(); } catch (HttpStatusException e) { logger.error("Got exception while running ripper:", e); + waitForThreads(); sendUpdate(STATUS.RIP_ERRORED, "Status=" + e.getStatusCode() + ", URL=" + e.getUrl()); } catch (IOException e) { logger.error("Got exception while running ripper:", e); + waitForThreads(); sendUpdate(STATUS.RIP_ERRORED, e.getMessage()); } finally { if (this.workingDir.list().length == 0) { diff --git a/src/main/java/com/rarchives/ripme/ripper/rippers/IrarchivesRipper.java b/src/main/java/com/rarchives/ripme/ripper/rippers/IrarchivesRipper.java index 3eacc87f..94197f77 100644 --- a/src/main/java/com/rarchives/ripme/ripper/rippers/IrarchivesRipper.java +++ b/src/main/java/com/rarchives/ripme/ripper/rippers/IrarchivesRipper.java @@ -36,6 +36,12 @@ public class IrarchivesRipper extends AlbumRipper { public URL sanitizeURL(URL url) throws MalformedURLException { String u = url.toExternalForm(); String searchTerm = u.substring(u.indexOf("?") + 1); + if (searchTerm.startsWith("url=")) { + if (!searchTerm.contains("http") + && !searchTerm.contains(":")) { + searchTerm = searchTerm.replace("url=", "user="); + } + } return new URL("http://i.rarchives.com/search.cgi?" + searchTerm); } @@ -58,7 +64,14 @@ public class IrarchivesRipper extends AlbumRipper { JSONObject post = (JSONObject) posts.get(i); String theUrl = post.getString("url"); if (theUrl.contains("imgur.com/a/")) { - ImgurAlbum album = ImgurRipper.getImgurAlbum(new URL(theUrl)); + ImgurAlbum album = null; + try { + album = ImgurRipper.getImgurAlbum(new URL(theUrl)); + } catch (IOException e) { + logger.error("Error loading imgur album " + theUrl, e); + sendUpdate(STATUS.DOWNLOAD_ERRORED, "Can't download " + theUrl + " : " + e.getMessage()); + continue; + } int albumIndex = 0; for (ImgurImage image : album.images) { albumIndex++; diff --git a/src/main/java/com/rarchives/ripme/ui/UpdateUtils.java b/src/main/java/com/rarchives/ripme/ui/UpdateUtils.java index 8b5556cf..6df993d4 100644 --- a/src/main/java/com/rarchives/ripme/ui/UpdateUtils.java +++ b/src/main/java/com/rarchives/ripme/ui/UpdateUtils.java @@ -21,7 +21,7 @@ import com.rarchives.ripme.utils.Utils; public class UpdateUtils { private static final Logger logger = Logger.getLogger(UpdateUtils.class); - private static final String DEFAULT_VERSION = "1.0.34"; + private static final String DEFAULT_VERSION = "1.0.35"; private static final String updateJsonURL = "http://rarchives.com/ripme.json"; private static final String updateJarURL = "http://rarchives.com/ripme.jar"; private static final String mainFileName = "ripme.jar";