Tue, 06 Jan 2015 21:39:09 +0100
Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.
1 /*
2 Copyright (c) 1999 Samphan Raruenrom <samphan@thai.com>
3 Permission to use, copy, modify, distribute and sell this software
4 and its documentation for any purpose is hereby granted without fee,
5 provided that the above copyright notice appear in all copies and
6 that both that copyright notice and this permission notice appear
7 in supporting documentation. Samphan Raruenrom makes no
8 representations about the suitability of this software for any
9 purpose. It is provided "as is" without express or implied warranty.
10 */
11 #ifndef __TH_CHAR_H__
12 #define __TH_CHAR_H__
13 #include "nscore.h"
16 typedef unsigned char tis_char;
18 #ifdef TH_UNICODE
19 /*
20 * The char16_t type is only usable in C++ code, so we need this ugly hack to
21 * select a binary compatible C type for the expat C code to use.
22 */
23 #ifdef __cplusplus
24 typedef char16_t th_char;
25 #else
26 typedef uint16_t th_char;
27 #endif
28 #define TH_THAIBEGIN_ 0x0e00
29 #define th_isthai(c) (0x0e00 <= (c) && (c) <= 0x0e5f)
30 #else
31 typedef tis_char th_char;
32 #define TH_THAIBEGIN_ 0xa0
33 #define th_isthai(c) ((c) >= 0xa0)
34 #endif
35 #define th_zcode(c) ((c) - TH_THAIBEGIN_)
37 enum TH_CHARNAME {
38 TH_THAIBEGIN = TH_THAIBEGIN_,
39 TH_KOKAI,TH_KHOKHAI,TH_KHOKHUAT,TH_KHOKHWAI,TH_KHOKHON,TH_KHORAKHANG,
40 TH_NGONGU,TH_CHOCHAN,TH_CHOCHING,TH_CHOCHANG,TH_SOSO,TH_CHOCHOE,TH_YOYING,
41 TH_DOCHADA,TH_TOPATAK,TH_THOTHAN,TH_THONANGMONTHO,TH_THOPHUTHAO,TH_NONEN,
42 TH_DODEK,TH_TOTAO,TH_THOTHUNG,TH_THOTHAHAN,TH_THOTHONG,TH_NONU,TH_BOBAIMAI,
43 TH_POPLA,TH_PHOPHUNG,TH_FOFA,TH_PHOPHAN,TH_FOFAN,TH_PHOSAMPHAO,TH_MOMA,
44 TH_YOYAK,TH_RORUA,TH_RU,TH_LOLING,TH_LU,TH_WOWAEN,TH_SOSALA,TH_SORUSI,
45 TH_SOSUA,TH_HOHIP,TH_LOCHULA,TH_OANG,TH_HONOKHUK,TH_PAIYANNOI,TH_SARA_A,
46 TH_MAIHANAKAT,TH_SARA_AA,TH_SARA_AM,TH_SARA_I,TH_SARA_II,TH_SARA_UE,
47 TH_SARA_UEE,TH_SARA_U,TH_SARA_UU,TH_PHINTHU,TH_REM_CHERNG_,TH_TAC_WBRK_,
48 TH_UNDEF_DD,TH_UNDEF_DE,TH_BAHT,TH_SARA_E,TH_SARA_AE,TH_SARA_O,TH_MAIMUAN,
49 TH_MAIMALAI,TH_LAKKHANGYAO,TH_MAIYAMOK,TH_MAITAIKHU,TH_MAIEK,TH_MAITHO,
50 TH_MAITRI,TH_MAICHATTAWA,TH_THANTHAKHAT,TH_NIKHAHIT,TH_YAMAKKAN,TH_FONGMAN,
51 TH_THAIZERO,TH_THAIONE,TH_THAITWO,TH_THAITHREE,TH_THAIFOUR,TH_THAIFIVE,
52 TH_THAISIX,TH_THAISEVEN,TH_THAIEIGHT,TH_THAININE,TH_ANGKHANKHU,TH_KHOMUT,
53 TH_UNDEF_FC,TH_UNDEF_FD,TH_UNDEF_FE,TH_THAIEND
54 };
55 #endif