[jbig2-cvs] rev 299 - trunk
giles at ghostscript.com
giles at ghostscript.com
Thu Dec 4 09:09:46 PST 2003
Author: giles
Date: 2003-12-04 08:11:27 -0800 (Thu, 04 Dec 2003)
New Revision: 299
Modified:
trunk/jbig2_symbol_dict.c
Log:
We no longer need to artificially recurse when building the list of referred symbol dictionaries
now that we properly construct an exported result.
Modified: trunk/jbig2_symbol_dict.c
===================================================================
--- trunk/jbig2_symbol_dict.c 2003-12-04 15:54:34 UTC (rev 298)
+++ trunk/jbig2_symbol_dict.c 2003-12-04 16:11:27 UTC (rev 299)
@@ -132,10 +132,7 @@
for (index = 0; index < segment->referred_to_segment_count; index++) {
rsegment = jbig2_find_segment(ctx, segment->referred_to_segments[index]);
- if (rsegment && ((rsegment->flags & 63) == 0)) {
- n_dicts++;
- n_dicts+= jbig2_sd_count_referred(ctx, rsegment);
- }
+ if (rsegment && ((rsegment->flags & 63) == 0)) n_dicts++;
}
return (n_dicts);
@@ -147,7 +144,7 @@
{
int index;
Jbig2Segment *rsegment;
- Jbig2SymbolDict **dicts, **rdicts;
+ Jbig2SymbolDict **dicts;
int n_dicts = jbig2_sd_count_referred(ctx, segment);
int dindex = 0;
@@ -155,14 +152,6 @@
for (index = 0; index < segment->referred_to_segment_count; index++) {
rsegment = jbig2_find_segment(ctx, segment->referred_to_segments[index]);
if (rsegment && ((rsegment->flags & 63) == 0)) {
- /* recurse for imported symbols */
- int j, n_rdicts = jbig2_sd_count_referred(ctx, rsegment);
- if (n_rdicts > 0) {
- rdicts = jbig2_sd_list_referred(ctx, rsegment);
- for (j = 0; j < n_rdicts; j++)
- dicts[dindex++] = rdicts[j];
- jbig2_free(ctx->allocator, rdicts);
- }
/* add this referred to symbol dictionary */
dicts[dindex++] = (Jbig2SymbolDict *)rsegment->result;
}
@@ -186,7 +175,6 @@
int i,j,k, symbols;
Jbig2SymbolDict *new = NULL;
-
/* count the imported symbols and allocate a new array */
symbols = 0;
for(i = 0; i < n_dicts; i++)
More information about the jbig2-cvs
mailing list