lynx-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ALLOC_IN_POOL, Re: lynx-dev lynx2.8.5dev.11


From: Henry Nelson
Subject: Re: ALLOC_IN_POOL, Re: lynx-dev lynx2.8.5dev.11
Date: Wed, 4 Dec 2002 10:27:12 +0900 (JST)

> I've lost patience with this.

hate to see a waste of programming skill of such magnitude

_hand edited_ the appended patch so let Leonid give an okay first.
should go on from the top directory without a hitch (tested)

__Henry

(Leonid, I can offer web space, but it will be inconvenient since there
is no longer any way to access our school lan from the outside.  You'd
have to send things to me, preferably gzipped and b64 encoded, and have
me put them on the server.  Anyway don't hesitate to ask.)

--- src/GridText.c.orig Wed Dec  4 10:11:11 2002
+++ src/GridText.c      Wed Dec  4 10:10:51 2002
@@ -2496,7 +2496,7 @@
     HTLine *,          line,
     int,               line_number,
     HText *,           text,
-    TextAnchor *,      prev_anchor,
+    TextAnchor **,     prev_anchor,
     int,               ninserts,
     int *,             oldpos,         /* Measured in cells */
     int *,             newpos)         /* Likewise */
@@ -2529,9 +2529,9 @@
        mod_line = allocHTLine(line->size + added_chars);
     if (!mod_line)
        return NULL;
-    if (!prev_anchor)
-       prev_anchor = text->first_anchor;
-    head_processed = (prev_anchor && prev_anchor->line_num < line_number);
+    if (!*prev_anchor)
+       *prev_anchor = text->first_anchor;
+    head_processed = (*prev_anchor && *prev_anchor->line_num < line_number);
     memcpy(mod_line, line, LINE_SIZE(0));
     t = newdata = mod_line->data;
     ip = 0;
@@ -2562,7 +2562,7 @@
 
        /* Now s is at the "displayed" char, pre is before the style change */
        if (ip)                         /* Fix anchor positions */
-           move_anchors_in_region(line, line_number, &prev_anchor,
+           move_anchors_in_region(line, line_number, prev_anchor,
                                   &head_processed,
                                   copied - line->data, pre - line->data,
                                   shift);
@@ -2590,8 +2590,8 @@
     while (pre < s)    /* Copy remaining style-codes */
        *t++ = *pre++;
     /* Check whether the last anchor continues on the next line */
-    if (head_processed && prev_anchor && prev_anchor->line_num == line_number)
-       prev_anchor->extent += shift;
+    if (head_processed && *prev_anchor && (*prev_anchor)->line_num == 
line_number)
+       (*prev_anchor)->extent += shift;
     *t = '\0';
     mod_line->size = t - newdata;
     return mod_line;
@@ -3245,21 +3245,11 @@
            previous = jline;
        }
        { /* (ht_num_runs==1) */
-           /* keep maintaining 'last_anchor_of_previous_line' */
-           TextAnchor* a2 = last_anchor_of_previous_line;
            if (justify_start_position) {
                char* p2 = previous->data;
                for( ; p2 < previous->data + justify_start_position; ++p2)
                    *p2 = (*p2 == HT_NON_BREAK_SPACE ? ' ' : *p2);
            }
-
-           if (!a2)
-               a2 = text->first_anchor;
-           else
-               a2 = a2->next; /* 1st anchor on line we justify */
-
-           for (; a2 && a2->line_num <= text->Lines-1;
-               last_anchor_of_previous_line = a2, a2 = a2->next);
        }
     } else {
        if (REALLY_CAN_JUSTIFY(text) ) {
@@ -4506,7 +4496,7 @@
            continue;
        }
        mod_line = insert_blanks_in_line(line, lineno, me,
-                                        me->last_anchor_before_stbl,
+                                        &me->last_anchor_before_stbl,
                                         ninserts, oldpos, newpos);
        if (mod_line) {
            if (line == me->last_line) {

; To UNSUBSCRIBE: Send "unsubscribe lynx-dev" to address@hidden

reply via email to

[Prev in Thread] Current Thread [Next in Thread]