Fixed in the current CVS version.
Thanks!
Serg.
Jan Kandziora wrote:
> Am Montag, 4. Dezember 2006 18:59 schrieb Jan Kandziora:
> ----Schnipp----
> I found another bug in owtcl. If an invalid request is forwarded to owlib, it
> doesn't change the reply buffer pointer at all, not even to NULL.
> This e.g. leads to:
>
>
> % OW::get bus.0/uncached/68689/present
> *** glibc detected *** free(): invalid pointer: 0x080552d8 ***
> Aborted
> janskiste:~ #
>
>
> To avoid having a patch of a patch, I made a collaboration patch for both
> problems:
>
> --- module/swig/tcl/ow.c.orig 2006-12-04 17:55:23.000000000 +0100
> +++ module/swig/tcl/ow.c 2006-12-04 22:28:12.000000000 +0100
> @@ -178,15 +178,21 @@
> }
> }
>
> + buf=NULL;
> r = OW_get(path, &buf, &ss);
> s = ss ; // to get around OW_get uses size_t
> if ( r<0 ) {
> owtcl_ErrorMsg(interp, strerror(-r));
> - free(buf);
> + if (buf) free(buf);
> tcl_return = TCL_ERROR;
> goto common_exit;
> }
>
> + if (buf==NULL) {
> + tcl_return = TCL_OK;
> + goto common_exit;
> + }
> +
> buf[s] = 0;
> if (lst) {
> if (strchr(buf, ',')) {
>
> Kind regards
>
> Jan
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Owfs-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/owfs-developers