fix http call referer for nonstandard ports, speed up vichan regex.

refactor-toolbar
Floens 7 years ago
parent 9307f2c39f
commit d42b9dfa06
  1. 6
      Clover/app/src/main/java/org/floens/chan/core/site/common/MultipartHttpCall.java
  2. 4
      Clover/app/src/main/java/org/floens/chan/core/site/common/vichan/VichanActions.java

@ -60,7 +60,11 @@ public abstract class MultipartHttpCall extends HttpCall {
@Override @Override
public void setup(Request.Builder requestBuilder) { public void setup(Request.Builder requestBuilder) {
requestBuilder.url(url); requestBuilder.url(url);
requestBuilder.addHeader("Referer", url.scheme() + "://" + url.host()); String r = url.scheme() + "://" + url.host();
if (url.port() != 80 && url.port() != 443) {
r += ":" + url.port();
}
requestBuilder.addHeader("Referer", r);
requestBuilder.post(formBuilder.build()); requestBuilder.post(formBuilder.build());
} }
} }

@ -87,7 +87,7 @@ public class VichanActions extends CommonSite.CommonActions {
@Override @Override
public void handlePost(ReplyResponse replyResponse, Response response, String result) { public void handlePost(ReplyResponse replyResponse, Response response, String result) {
Matcher auth = Pattern.compile(".*\"captcha\": ?true.*").matcher(result); Matcher auth = Pattern.compile("\"captcha\": ?true").matcher(result);
Matcher err = errorPattern().matcher(result); Matcher err = errorPattern().matcher(result);
if (auth.find()) { if (auth.find()) {
replyResponse.requireAuthentication = true; replyResponse.requireAuthentication = true;
@ -137,7 +137,7 @@ public class VichanActions extends CommonSite.CommonActions {
} }
public Pattern errorPattern() { public Pattern errorPattern() {
return Pattern.compile(".*<h1[^>]*>Error</h1>.*<h2[^>]*>(.*?)</h2>.*"); return Pattern.compile("<h1[^>]*>Error</h1>.*<h2[^>]*>(.*?)</h2>");
} }
@Override @Override

Loading…
Cancel
Save