summaryrefslogtreecommitdiffstats
path: root/redhat/dependencies/qt3/qt-3.3.6-fontrendering-ml_IN-209097.patch
diff options
context:
space:
mode:
Diffstat (limited to 'redhat/dependencies/qt3/qt-3.3.6-fontrendering-ml_IN-209097.patch')
-rw-r--r--redhat/dependencies/qt3/qt-3.3.6-fontrendering-ml_IN-209097.patch60
1 files changed, 60 insertions, 0 deletions
diff --git a/redhat/dependencies/qt3/qt-3.3.6-fontrendering-ml_IN-209097.patch b/redhat/dependencies/qt3/qt-3.3.6-fontrendering-ml_IN-209097.patch
new file mode 100644
index 000000000..01f3824c1
--- /dev/null
+++ b/redhat/dependencies/qt3/qt-3.3.6-fontrendering-ml_IN-209097.patch
@@ -0,0 +1,60 @@
+--- qt-x11-free-3.3.6/src/kernel/qscriptengine_x11.cpp.bak 2006-10-13 13:21:37.000000000 +0800
++++ qt-x11-free-3.3.6/src/kernel/qscriptengine_x11.cpp 2006-10-13 13:57:36.000000000 +0800
+@@ -868,7 +868,7 @@
+ None, None, None, None,
+ None, None, None, Post,
+
+- Post, None, Below, None,
++ None, None, None, None,
+ None, Post, None, None,
+ None, None, None, None,
+ None, None, Post, Post,
+@@ -1271,6 +1271,16 @@
+ int base = 0;
+ int reph = -1;
+
++ //for the special conjuctions about Cons+0d4d+0d30 and Cons+0d40+0d31 of Malayalam
++ bool is_special_conjuction_malayalam = false;
++
++ if ((len == 3) &&
++ ((reordered[2] == 0x0d30) || (reordered[2] == 0x0d31)) &&
++ (reordered[1] == 0x0d4d) &&
++ ((reordered[0] >= 0x0d15) && (reordered[0] <= 0x0d39))) {
++ is_special_conjuction_malayalam = true;
++ }
++
+ #ifdef INDIC_DEBUG
+ IDEBUG("original:");
+ for (i = 0; i < len; i++) {
+@@ -1547,6 +1557,15 @@
+ reph = i;
+ }
+
++ //for the special conjuctions about Cons+0d4d+0d30 and Cons+0d40+0d31 of Malayalam
++ if (is_special_conjuction_malayalam) {
++ unsigned short temp;
++
++ temp = reordered[0];
++ reordered[0] = reordered[2];
++ reordered[2] = temp;
++ }
++
+ if (item->font->stringToCMap((const QChar *)reordered.data(), len, item->glyphs, item->advances,
+ &item->num_glyphs, item->flags & QTextEngine::RightToLeft) != QFontEngine::NoError)
+ return FALSE;
+@@ -1658,6 +1677,15 @@
+
+ // halant always applies
+
++ //for the special conjuctions about Cons+0d4d+0d30 and Cons+0d40+0d31 of Malayalam
++ if (is_special_conjuction_malayalam) {
++ unsigned int temp;
++
++ temp = properties[0];
++ properties[0] = ~PreSubstProperty;
++ properties[2] = temp;
++ }
++
+ #ifdef INDIC_DEBUG
+ {
+ IDEBUG("OT properties:");