[FriBidi-commit] fribidi/lib fribidi-bidi.c,1.14,1.15
Behdad Esfahbod
behdad at pdx.freedesktop.org
Fri Jun 18 15:41:41 PDT 2004
- Previous message: [FriBidi-commit] fribidi/lib fribidi-bidi-types.h, 1.11,
1.12 fribidi-bidi.c, 1.13, 1.14 fribidi-bidi.h, 1.10,
1.11 fribidi-types.h, 1.7, 1.8 fribidi.c, 1.11, 1.12
- Next message: [FriBidi-commit] fribidi/test Makefile.am, 1.1.1.1,
1.2 test_CapRTL_explicit.input, 1.1.1.1,
1.2 test_CapRTL_explicit.reference, 1.1.1.1, 1.2
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /cvs/fribidi/fribidi/lib
In directory pdx:/tmp/cvs-serv7777/lib
Modified Files:
fribidi-bidi.c
Log Message:
Rever back to our old level setting for BN and explicits. The new method was
buggy. A test case added to capture that.
Index: fribidi-bidi.c
===================================================================
RCS file: /cvs/fribidi/fribidi/lib/fribidi-bidi.c,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -d -r1.14 -r1.15
--- fribidi-bidi.c 18 Jun 2004 19:21:33 -0000 1.14
+++ fribidi-bidi.c 18 Jun 2004 22:41:39 -0000 1.15
@@ -451,26 +451,19 @@
FRIBIDI_DIR_TO_LEVEL (this_type);
PUSH_STATUS;
}
-
- /* Set level to the higher level */
- RL_LEVEL (pp) = level;
}
else if (this_type == FRIBIDI_TYPE_PDF)
{
- /* Set level to the higher level */
- RL_LEVEL (pp) = level;
-
/* 3. Terminating Embeddings and overrides */
/* X7. With each PDF, determine the matching embedding or
override code. */
for (i = RL_LEN (pp); i; i--)
POP_STATUS;
}
- else
- RL_LEVEL (pp) = level;
/* X9. Remove all RLE, LRE, RLO, LRO, PDF, and BN codes. */
/* Remove element and add it to explicits_list */
+ RL_LEVEL (pp) = FRIBIDI_SENTINEL;
temp_link.next = pp->next;
move_node_before (pp, explicits_list);
pp = &temp_link;
@@ -739,13 +732,12 @@
explicits_list = NULL;
if UNLIKELY
(!stat) goto out;
- /* We don't need this code since we set levels for everything we remove.
+
p = main_run_list->next;
if (p != main_run_list && p->level == FRIBIDI_SENTINEL)
p->level = base_level;
for_run_list (p, main_run_list) if (p->level == FRIBIDI_SENTINEL)
p->level = p->prev->level;
- */
}
# if DEBUG
@@ -932,7 +924,7 @@
/* L1. Reset the embedding levels of some chars:
4. any sequence of white space characters at the end of the line.*/
- for (i = len - 1; i >= 0 &&
+ for (i = off + len - 1; i >= off &&
FRIBIDI_IS_EXPLICIT_OR_BN_OR_WS (BIDI_TYPE (i)); i--)
embedding_levels[i] = FRIBIDI_DIR_TO_LEVEL (base_dir);
}
- Previous message: [FriBidi-commit] fribidi/lib fribidi-bidi-types.h, 1.11,
1.12 fribidi-bidi.c, 1.13, 1.14 fribidi-bidi.h, 1.10,
1.11 fribidi-types.h, 1.7, 1.8 fribidi.c, 1.11, 1.12
- Next message: [FriBidi-commit] fribidi/test Makefile.am, 1.1.1.1,
1.2 test_CapRTL_explicit.input, 1.1.1.1,
1.2 test_CapRTL_explicit.reference, 1.1.1.1, 1.2
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the FriBidi-Commit
mailing list