Skip to content

Commit

Permalink
Replaced juniversalchardet by compact_enc_det
Browse files Browse the repository at this point in the history
  • Loading branch information
M66B committed Oct 14, 2020
1 parent 68bfa6c commit 52d6fed
Show file tree
Hide file tree
Showing 4 changed files with 3 additions and 26 deletions.
1 change: 0 additions & 1 deletion ATTRIBUTION.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,5 +27,4 @@ FairEmail uses:
* [GPX file type icon](https://www.flaticon.com/free-icon/gpx-file-format-variant_29258) made by [Freepik](https://www.flaticon.com/authors/freepik) from [Flaticon](https://www.flaticon.com).
* [Disconnect's tracker protection lists](https://github.com/disconnectme/disconnect-tracking-protection). Copyright 2010-2020 Disconnect, Inc. [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International license](https://github.com/disconnectme/disconnect-tracking-protection/blob/master/LICENSE).
* [Over-Scroll Support For Android's RecyclerView, ListView, GridView, ScrollView ...](https://github.com/EverythingMe/overscroll-decor). Copyright (c) 2015, DoAT Media Ltd. [BSD-2-Clause License](https://github.com/EverythingMe/overscroll-decor/blob/master/LICENSE)
* [juniversalchardet](https://github.com/albfernandez/juniversalchardet). Copyright (C) 2001 the Initial Developer. All Rights Reserved. [GNU General Public License Version 2](https://github.com/albfernandez/juniversalchardet#license).
* [Compact Encoding Detection](https://github.com/google/compact_enc_det). Copyright 2016 Google Inc. [Apache License 2.0](https://github.com/google/compact_enc_det/blob/master/LICENSE).
6 changes: 0 additions & 6 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -241,7 +241,6 @@ dependencies {
def overscroll_version = "1.1.0"
def appauth_version = "0.7.1"
def jcharset_version = "2.1"
def jchardet_version = "2.3.2"

// https://developer.android.com/jetpack/androidx/releases/

Expand Down Expand Up @@ -402,9 +401,4 @@ dependencies {
// http://www.freeutils.net/source/jcharset/
// https://mvnrepository.com/artifact/net.freeutils/jcharset
implementation "net.freeutils:jcharset:$jcharset_version"

// https://github.com/albfernandez/juniversalchardet
// https://www-archive.mozilla.org/projects/intl/chardet.html
// https://mvnrepository.com/artifact/com.github.albfernandez/juniversalchardet
implementation "com.github.albfernandez:juniversalchardet:$jchardet_version"
}
2 changes: 1 addition & 1 deletion app/src/main/assets/ATTRIBUTION.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,4 +27,4 @@ FairEmail uses:
* [GPX file type icon](https://www.flaticon.com/free-icon/gpx-file-format-variant_29258) made by [Freepik](https://www.flaticon.com/authors/freepik) from [Flaticon](https://www.flaticon.com).
* [Disconnect's tracker protection lists](https://github.com/disconnectme/disconnect-tracking-protection). Copyright 2010-2020 Disconnect, Inc. [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International license](https://github.com/disconnectme/disconnect-tracking-protection/blob/master/LICENSE).
* [Over-Scroll Support For Android's RecyclerView, ListView, GridView, ScrollView ...](https://github.com/EverythingMe/overscroll-decor). Copyright (c) 2015, DoAT Media Ltd. [BSD-2-Clause License](https://github.com/EverythingMe/overscroll-decor/blob/master/LICENSE)
* [juniversalchardet](https://github.com/albfernandez/juniversalchardet). Copyright (C) 2001 the Initial Developer. All Rights Reserved. [GNU General Public License Version 2](https://github.com/albfernandez/juniversalchardet#license).
* [Compact Encoding Detection](https://github.com/google/compact_enc_det). Copyright 2016 Google Inc. [Apache License 2.0](https://github.com/google/compact_enc_det/blob/master/LICENSE).
20 changes: 2 additions & 18 deletions app/src/main/java/eu/faircode/email/CharsetHelper.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,11 @@
Copyright 2018-2020 by Marcel Bokhorst (M66B)
*/

import org.mozilla.universalchardet.UniversalDetector;

import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
import java.nio.charset.UnsupportedCharsetException;

class CharsetHelper {
private static final int SAMPLE_SIZE = 1024;

static {
System.loadLibrary("compact_enc_det");
}
Expand Down Expand Up @@ -129,20 +125,8 @@ else if (c == '$')
static Charset detect(String text) {
try {
byte[] octets = text.getBytes(StandardCharsets.ISO_8859_1);
Log.i("compact_enc_det=" + jni_detect(octets));

int offset = 0;
UniversalDetector detector = new UniversalDetector();
while (offset < octets.length && !detector.isDone()) {
detector.handleData(octets, offset, Math.min(SAMPLE_SIZE, octets.length - offset));
offset += SAMPLE_SIZE;
}
detector.dataEnd();

String detected = detector.getDetectedCharset();
if (detected == null)
return null;

String detected = jni_detect(octets);
Log.i("compact_enc_det=" + detected);
return Charset.forName(detected);
} catch (Throwable ex) {
Log.w(ex);
Expand Down

0 comments on commit 52d6fed

Please sign in to comment.