lynx-dev
[Top][All Lists]
Advanced

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

[Lynx-dev] free() of idna_to_ascii_8z() buffer


From: Gisle Vanem
Subject: [Lynx-dev] free() of idna_to_ascii_8z() buffer
Date: Fri, 7 Feb 2014 17:51:33 +0100

Hello Thomas etc.

The buffer allocated by idna_to_ascii_8z() should be freed by libidn.
That's why Simon Josefsson added the idn_free(). The '(free)' caused a
crash here since my libidn (MSVC) was built without debug, but Lynx (also MSVC)
used the debug-model (-MDd). Hence:

--- orig/WWW/Library/Implementation/HTParse.c        2013-11-29 01:52:56 +0000
+++ WWW/Library/Implementation/HTParse.c        2014-02-07 17:33:03 +0000
@@ -301,7 +301,7 @@
                       idna_strerror((Idna_rc) code)));
           }
           if (output)         /* "(free)" to bypass LYLeaks.c */
-               (free) (output);
+               idn_free (output);
       }
       free(buffer);
    }

------

Btw. the stuff with USE_ALT_BINDING I reported last year, is still an issue. W/o USE_ALT_BINDINGS, I get:

src/LYEditmap.c(1754) : error C2065: 'LYModifierBindings' : undeclared 
identifier
src/LYEditmap.c(1754) : error C2065: 'LYModifierBindings' : undeclared 
identifier
src/LYEditmap.c(1754) : error C2109: subscript requires array or pointer type
src/LYEditmap.c(1755) : error C2065: 'LYModifierBindings' : undeclared 
identifier
src/LYEditmap.c(1755) : error C2109: subscript requires array or pointer type
src/LYEditmap.c(1755) : error C2198: 'initLineEditor' : too few arguments for 
call

So:

--- orig/src/LYEditmap.c     2013-11-29 01:52:56 +0000
+++ src/LYEditmap.c     2014-02-07 17:24:52 +0000
@@ -1750,9 +1750,11 @@
       LYEditorNames[j] = LYLineEditors[j].name;
       initLineEditor(&LYLineEditors[j]);
    }
+#ifdef USE_ALT_BINDINGS
    for (j = 0; j < TABLESIZE(LYModifierBindings); ++j) {
       initLineEditor(&LYModifierBindings[j]);
    }
+#endif
}

--------

--gv



reply via email to

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