aboutsummaryrefslogtreecommitdiff
path: root/fontconfig
diff options
context:
space:
mode:
Diffstat (limited to 'fontconfig')
-rw-r--r--fontconfig/conf.d/11-lcdfilter-default.conf10
-rw-r--r--fontconfig/conf.d/11-lcdfilter-legacy.conf10
-rw-r--r--fontconfig/conf.d/11-lcdfilter-light.conf10
-rw-r--r--fontconfig/conf.d/Makefile.am3
-rw-r--r--fontconfig/fc-lang/Makefile.am4
-rw-r--r--fontconfig/fc-lang/brx.orth46
-rw-r--r--fontconfig/fc-lang/sat.orth44
-rw-r--r--fontconfig/src/fccfg.c10
-rw-r--r--fontconfig/src/ftglue.c3
9 files changed, 137 insertions, 3 deletions
diff --git a/fontconfig/conf.d/11-lcdfilter-default.conf b/fontconfig/conf.d/11-lcdfilter-default.conf
new file mode 100644
index 000000000..040a4ac83
--- /dev/null
+++ b/fontconfig/conf.d/11-lcdfilter-default.conf
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<fontconfig>
+<!-- Use lcddefault as default for LCD filter -->
+ <match target="font">
+ <edit mode="assign" name="lcdfilter">
+ <const>lcddefault</const>
+ </edit>
+ </match>
+</fontconfig>
diff --git a/fontconfig/conf.d/11-lcdfilter-legacy.conf b/fontconfig/conf.d/11-lcdfilter-legacy.conf
new file mode 100644
index 000000000..218585ce3
--- /dev/null
+++ b/fontconfig/conf.d/11-lcdfilter-legacy.conf
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<fontconfig>
+<!-- Use lcdlegacy as default for LCD filter -->
+ <match target="font">
+ <edit mode="assign" name="lcdfilter">
+ <const>lcdlegacy</const>
+ </edit>
+ </match>
+</fontconfig>
diff --git a/fontconfig/conf.d/11-lcdfilter-light.conf b/fontconfig/conf.d/11-lcdfilter-light.conf
new file mode 100644
index 000000000..d38a66ef0
--- /dev/null
+++ b/fontconfig/conf.d/11-lcdfilter-light.conf
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<fontconfig>
+<!-- Use lcdlight as default for LCD filter -->
+ <match target="font">
+ <edit mode="assign" name="lcdfilter">
+ <const>lcdlight</const>
+ </edit>
+ </match>
+</fontconfig>
diff --git a/fontconfig/conf.d/Makefile.am b/fontconfig/conf.d/Makefile.am
index 3f5255fad..d122a8ff0 100644
--- a/fontconfig/conf.d/Makefile.am
+++ b/fontconfig/conf.d/Makefile.am
@@ -32,6 +32,9 @@ CONF_FILES = \
10-sub-pixel-vbgr.conf \
10-sub-pixel-vrgb.conf \
10-unhinted.conf \
+ 11-lcdfilter-default.conf \
+ 11-lcdfilter-legacy.conf \
+ 11-lcdfilter-light.conf \
20-fix-globaladvance.conf \
20-unhint-small-vera.conf \
25-unhint-nonlatin.conf \
diff --git a/fontconfig/fc-lang/Makefile.am b/fontconfig/fc-lang/Makefile.am
index 628796054..8f53688a7 100644
--- a/fontconfig/fc-lang/Makefile.am
+++ b/fontconfig/fc-lang/Makefile.am
@@ -300,5 +300,7 @@ ORTH = \
wal.orth \
za.orth \
lah.orth \
- nqo.orth
+ nqo.orth \
+ brx.orth \
+ sat.orth
# ^-------------- Add new orth files here
diff --git a/fontconfig/fc-lang/brx.orth b/fontconfig/fc-lang/brx.orth
new file mode 100644
index 000000000..eab20462a
--- /dev/null
+++ b/fontconfig/fc-lang/brx.orth
@@ -0,0 +1,46 @@
+#
+# fontconfig/fc-lang/brx.orth
+#
+# Copyright © 2012 Parag Nemade
+#
+# Permission to use, copy, modify, distribute, and sell this software and its
+# documentation for any purpose is hereby granted without fee, provided that
+# the above copyright notice appear in all copies and that both that
+# copyright notice and this permission notice appear in supporting
+# documentation, and that the name of Keith Packard not be used in
+# advertising or publicity pertaining to distribution of the software without
+# specific, written prior permission. Keith Packard makes no
+# representations about the suitability of this software for any purpose. It
+# is provided "as is" without express or implied warranty.
+#
+# THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+# EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+# PERFORMANCE OF THIS SOFTWARE.
+#
+# Bodo (Devanagari script) (brx)
+#
+# Source: Enhanced inscript: http://pune.cdac.in/html/gist/down/inscript_d.asp
+# Or
+# Source: http://malayalam.kerala.gov.in/images/8/80/Qwerty_enhancedinscriptkeyboardlayout.pdf Page No. 44
+#
+0901-0903 # Various Signs
+0905-090c # Independent vowels
+090f-0910 # Independent vowels
+0913-0914 # Independent vowels
+0915-0928 # Consonants
+092a-0930 # Consonants
+0932-0932 # Consonants
+0935-0939 # Consonants
+093c-0944 # Various and Dependent vowel signs
+0947-0948 # Dependent vowel signs
+094b-094d # Dependent vowel signs and virama
+0950-0952 # Sign and vedic tone marks
+0960-0963 # Additional vowels
+0964-0965 # Punctuations
+0966-096F # Digits
+0970 # Abbrevation sign
+
diff --git a/fontconfig/fc-lang/sat.orth b/fontconfig/fc-lang/sat.orth
new file mode 100644
index 000000000..d5d91d006
--- /dev/null
+++ b/fontconfig/fc-lang/sat.orth
@@ -0,0 +1,44 @@
+# fontconfig/fc-lang/sat.orth
+#
+# Copyright © 2012 Parag Nemade
+#
+# Permission to use, copy, modify, distribute, and sell this software and its
+# documentation for any purpose is hereby granted without fee, provided that
+# the above copyright notice appear in all copies and that both that
+# copyright notice and this permission notice appear in supporting
+# documentation, and that the name of Keith Packard not be used in
+# advertising or publicity pertaining to distribution of the software without
+# specific, written prior permission. Keith Packard makes no
+# representations about the suitability of this software for any purpose. It
+# is provided "as is" without express or implied warranty.
+#
+# THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+# EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+# PERFORMANCE OF THIS SOFTWARE.
+#
+# Santali (Devanagari script) (sat)
+#
+# Source: Enhanced inscript: http://pune.cdac.in/html/gist/down/inscript_d.asp
+# Or
+# Source: http://malayalam.kerala.gov.in/images/8/80/Qwerty_enhancedinscriptkeyboardlayout.pdf Page No. 86
+#
+0901-0903 # Various Signs
+0905-090a # Independent vowels
+090f-0910 # Independent vowels
+0913-0914 # Independent vowels
+0915-0928 # Consonants
+092a-0930 # Consonants
+0932-0932 # Consonants
+0935 # Consonants
+0938-0939 # Consonants
+093c-0942 # Various and Dependent vowel signs
+0947-0948 # Dependent vowel signs
+094b-094d # Dependent vowel signs and virama
+0950 # Sign
+0964-0965 # Punctuations
+0966-096F # Digits
+0970 # Abbrevation sign
diff --git a/fontconfig/src/fccfg.c b/fontconfig/src/fccfg.c
index 09c59919d..9395f743d 100644
--- a/fontconfig/src/fccfg.c
+++ b/fontconfig/src/fccfg.c
@@ -2023,7 +2023,15 @@ FcConfigGlobMatch (const FcChar8 *glob,
return FcTrue;
/* short circuit another common case */
if (strchr ((char *) glob, '*') == 0)
- string += strlen ((char *) string) - strlen ((char *) glob);
+ {
+ size_t l1, l2;
+
+ l1 = strlen ((char *) string);
+ l2 = strlen ((char *) glob);
+ if (l1 < l2)
+ return FcFalse;
+ string += (l1 - l2);
+ }
while (*string)
{
if (FcConfigGlobMatch (glob, string))
diff --git a/fontconfig/src/ftglue.c b/fontconfig/src/ftglue.c
index d5af810b4..7c643d0ff 100644
--- a/fontconfig/src/ftglue.c
+++ b/fontconfig/src/ftglue.c
@@ -82,7 +82,6 @@ ftglue_stream_seek( FT_Stream stream,
{
FT_Error error = 0;
- stream->pos = pos;
if ( stream->read )
{
if ( stream->read( stream, pos, 0, 0 ) )
@@ -91,6 +90,8 @@ ftglue_stream_seek( FT_Stream stream,
else if ( pos > stream->size )
error = FT_Err_Invalid_Stream_Operation;
+ if ( !error )
+ stream->pos = pos;
LOG(( "ftglue:stream:seek(%ld) -> %d\n", pos, error ));
return error;
}