[tbb-commits] [tor-browser/tor-browser-52.7.3esr-8.0-1] Bug 25980 - Define __libcpp_feof when we redefine feof

gk at torproject.org gk at torproject.org
Thu May 3 06:27:14 UTC 2018


commit d51742d0dd8364c20bb33a15cec5c2ae6d81f9b5
Author: Matthew Finkel <Matthew.Finkel at gmail.com>
Date:   Mon Apr 30 19:02:54 2018 +0000

    Bug 25980 - Define __libcpp_feof when we redefine feof
    
    On Android, NDK r11b declares __libcpp_feof(FILE*) as a wrapper around
    feof(FILE*). This is semanticly incorrect when feof is redefined
    and the function signature changes, therefore causing a
    type-incompatibility. In this case, within the hyphenation code
    feof(FILE*) is redefined as feof(hnjFile*), but |struct hnjFile| does
    not have a converting constructor for FILE. The easy solution is simply
    redefining __libcpp_feof, as well.
    
    Bugfix on 0e1e49d4971bb891152c93b8b62665f24bd8a0c2
---
 intl/hyphenation/glue/hnjalloc.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/intl/hyphenation/glue/hnjalloc.h b/intl/hyphenation/glue/hnjalloc.h
index 5cee1be1b6d7..78e9d8cbee13 100644
--- a/intl/hyphenation/glue/hnjalloc.h
+++ b/intl/hyphenation/glue/hnjalloc.h
@@ -31,6 +31,11 @@
 #define fopen(path,mode)      hnjFopen(path,mode)
 #define fclose(file)          hnjFclose(file)
 #define fgets(buf,count,file) hnjFgets(buf,count,file)
+#ifdef __ANDROID__
+#ifdef feof
+#define __libcpp_feof(file)            hnjFeof(file)
+#endif // feof
+#endif // __ANDROID__
 #define feof(file)            hnjFeof(file)
 #define fgetc(file)           hnjFgetc(file)
 



More information about the tbb-commits mailing list