Your message dated Tue, 26 Aug 2008 10:32:10 +0000
with message-id <[EMAIL PROTECTED]>
and subject line Bug#495521: fixed in kaya 0.4.2-3
has caused the Debian Bug report #495521,
regarding kaya: 0.4.2 contains data corruption bugs
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [EMAIL PROTECTED]
immediately.)


-- 
495521: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=495521
Debian Bug Tracking System
Contact [EMAIL PROTECTED] with problems
--- Begin Message ---
Package: kaya
Version: 0.4.2-2
Severity: grave
Tags: patch
Justification: causes non-serious data loss


0.4.2 contains a few data loss / data corruption bugs that are fixed 
upstream in 0.4.3. The attached patch fixes these bugs, as well as a
compiler error where valid code would not compile. In order from
most serious to least, the bugs are:

rts/VMState.cc: fixes memory allocation bug which can cause
hard-to-trace crashes. 
libs/my_inter.cc: fixes data corruption bug where values returned from
prepared queries in MySQL contain NULLs
stdlib/Mime.k: fixes bug with processing of form fields in file upload
forms
stdlib/Regex.k: fixes bug with Regex splitting of strings where the
delimiter terminates the string
compiler/LambdaLift.hs: fixes bug with for loops and lambda functions

Thanks

-- System Information:
Debian Release: lenny/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)

Kernel: Linux 2.6.18 (SMP w/1 CPU core)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages kaya depends on:
ii  g++-4.2                4.2.3-2           The GNU C++ compiler
ii  libc6                  2.7-9             GNU C Library: Shared libraries
ii  libgc-dev              1:6.8-1.1         conservative garbage collector for
ii  libgc1c2               1:6.8-1.1         conservative garbage collector for
ii  libgcc1                1:4.3-20080227-1  GCC support library
ii  libgcrypt11            1.4.0-3           LGPL Crypto library - runtime libr
ii  libgcrypt11-dev        1.4.0-3           LGPL Crypto library - development 
ii  libgmp3c2              2:4.2.1+dfsg-5    Multiprecision arithmetic library
ii  libgnutls-dev          2.2.2-1           the GNU TLS library - development 
ii  libncurses5            5.6+20080203-1    Shared libraries for terminal hand
ii  libpcre3               7.6-2             Perl 5 Compatible Regular Expressi
ii  libpcre3-dev           7.6-2             Perl 5 Compatible Regular Expressi
ii  libreadline5           5.2-3             GNU readline and history libraries
ii  libstdc++6             4.3-20080227-1    The GNU Standard C++ Library v3
ii  zlib1g                 1:1.2.3.3.dfsg-11 compression library - runtime
ii  zlib1g-dev             1:1.2.3.3.dfsg-11 compression library - development

kaya recommends no packages.

-- no debconf information
diff -rN -u old-kaya/compiler/LambdaLift.hs new-kaya/compiler/LambdaLift.hs
--- old-kaya/compiler/LambdaLift.hs	2008-08-18 10:04:38.000000000 +0100
+++ new-kaya/compiler/LambdaLift.hs	2008-08-18 10:04:38.000000000 +0100
@@ -83,7 +83,7 @@
        let (defs'',e2') = lift' defs' locs e2 in
 	   (defs'',DoWhile e1' e2')
    lift' defs locs (For i nm j lval e1 e2) =
-       let (defs',e1') = lift' defs locs e1 in
+       let (defs',e1') = lift' defs (fakevars++locs) e1 in
        let (defs'',e2') = lift' defs' (fakevars++locs) e2 in
        let (defs''',lval') = liftlval defs'' locs lval in
 	   (defs''',For i nm j lval' e1' e2')
diff -rN -u old-kaya/libs/my_inter.cc new-kaya/libs/my_inter.cc
--- old-kaya/libs/my_inter.cc	2008-08-18 10:04:38.000000000 +0100
+++ new-kaya/libs/my_inter.cc	2008-08-18 10:04:38.000000000 +0100
@@ -289,7 +289,11 @@
       
       for(int j = 0; j<numflds; j++) {
 	KayaValue pv,fld;
-	pv = KayaString(KSTRING((char*)rbind[i].buffer));
+	if (rnull[j]) {
+	  pv = KayaString(L"");
+	} else {
+	  pv = KayaString(KSTRING((char*)rbind[j].buffer));
+	}
 	fld = KayaUnion(0,1);
 	KayaUnionSetArg(fld,0,pv);
 	KayaArrayPush(row,fld);
diff -rN -u old-kaya/rts/VMState.cc new-kaya/rts/VMState.cc
--- old-kaya/rts/VMState.cc	2008-08-18 10:04:38.000000000 +0100
+++ new-kaya/rts/VMState.cc	2008-08-18 10:04:38.000000000 +0100
@@ -28,7 +28,7 @@
 
 void initFunMap(kint sz, kint fmhash)
 {
-    func* funcs = (func*)malloc(sizeof(func)*sz);
+    func* funcs = (func*)GC_MALLOC_UNCOLLECTABLE(sizeof(func)*sz);
     m_funmap[0] = funcs;
     m_funmapsize = sz;
     m_funmaphash = fmhash;
diff -rN -u old-kaya/stdlib/Mime.k new-kaya/stdlib/Mime.k
--- old-kaya/stdlib/Mime.k	2008-08-18 10:04:38.000000000 +0100
+++ new-kaya/stdlib/Mime.k	2008-08-18 10:04:38.000000000 +0100
@@ -135,7 +135,13 @@
 	  pop(bstack);
 	}
 	if (fname == "") {
-	  push(mimeobjs,Mime(copy(blockname),copy(ctype),MimeString(copy(content))));
+	  if (substr(content,-2,2) == "\r\n") {
+	    push(mimeobjs,Mime(copy(blockname),copy(ctype),MimeString(substr(content,0,length(content)-2))));
+	  } else if (substr(content,-1,1) == "\n" || substr(content,-1,1) == "\r") {
+	    push(mimeobjs,Mime(copy(blockname),copy(ctype),MimeString(substr(content,0,length(content)-1))));
+	  } else {
+	    push(mimeobjs,Mime(copy(blockname),copy(ctype),MimeString(copy(content))));
+	  }
 	} else {
 	  push(mimeobjs,Mime(copy(blockname),copy(ctype),MimeFile(copy(fname),copy(tmpname))));
 	  close(mfh);
@@ -148,7 +154,7 @@
 	leavestate = DecodeBody;
       } else {
 	if (fname == "") {
-	  trim(line);
+	  //	  trim(line);
 	  content += line;
 	} else {
 	  // binary safe (last \r\n is a delimiter, not content... complicated)
diff -rN -u old-kaya/stdlib/Regex.k new-kaya/stdlib/Regex.k
--- old-kaya/stdlib/Regex.k	2008-08-18 10:04:38.000000000 +0100
+++ new-kaya/stdlib/Regex.k	2008-08-18 10:04:38.000000000 +0100
@@ -317,10 +317,14 @@
       }
       limit--; 
       if (limit == 0) { 
-	push(strs,str); 
+	if (allowempty || str != "") {
+	  push(strs,str); 
+	}
 	break;
       } // stop matching
-	| noMatch() -> push(strs,str); 
+	| noMatch() -> 	if (allowempty || str != "") {
+	  push(strs,str); 
+	}
 	               break; // Stop matching
     }
     return strs;

--- End Message ---
--- Begin Message ---
Source: kaya
Source-Version: 0.4.2-3

We believe that the bug you reported is fixed in the latest version of
kaya, which is due to be installed in the Debian FTP archive:

kaya_0.4.2-3.diff.gz
  to pool/main/k/kaya/kaya_0.4.2-3.diff.gz
kaya_0.4.2-3.dsc
  to pool/main/k/kaya/kaya_0.4.2-3.dsc
kaya_0.4.2-3_all.deb
  to pool/main/k/kaya/kaya_0.4.2-3_all.deb
libkaya-gd-dev_0.4.2-3_all.deb
  to pool/main/k/kaya/libkaya-gd-dev_0.4.2-3_all.deb
libkaya-gl-dev_0.4.2-3_all.deb
  to pool/main/k/kaya/libkaya-gl-dev_0.4.2-3_all.deb
libkaya-mysql-dev_0.4.2-3_all.deb
  to pool/main/k/kaya/libkaya-mysql-dev_0.4.2-3_all.deb
libkaya-ncurses-dev_0.4.2-3_all.deb
  to pool/main/k/kaya/libkaya-ncurses-dev_0.4.2-3_all.deb
libkaya-ncursesw-dev_0.4.2-3_all.deb
  to pool/main/k/kaya/libkaya-ncursesw-dev_0.4.2-3_all.deb
libkaya-pgsql-dev_0.4.2-3_all.deb
  to pool/main/k/kaya/libkaya-pgsql-dev_0.4.2-3_all.deb
libkaya-sdl-dev_0.4.2-3_all.deb
  to pool/main/k/kaya/libkaya-sdl-dev_0.4.2-3_all.deb
libkaya-sqlite3-dev_0.4.2-3_all.deb
  to pool/main/k/kaya/libkaya-sqlite3-dev_0.4.2-3_all.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [EMAIL PROTECTED],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Stuart Teasdale <[EMAIL PROTECTED]> (supplier of updated kaya package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [EMAIL PROTECTED])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.8
Date: Tue, 26 Aug 2008 08:52:42 +0100
Source: kaya
Binary: kaya libkaya-pgsql-dev libkaya-mysql-dev libkaya-sqlite3-dev 
libkaya-gd-dev libkaya-sdl-dev libkaya-ncurses-dev libkaya-gl-dev 
libkaya-ncursesw-dev
Architecture: source all
Version: 0.4.2-3
Distribution: unstable
Urgency: low
Maintainer: Stuart Teasdale <[EMAIL PROTECTED]>
Changed-By: Stuart Teasdale <[EMAIL PROTECTED]>
Description: 
 kaya       - A statically typed, imperative programming language
 libkaya-gd-dev - GD binding for kaya
 libkaya-gl-dev - OpenGL binding for kaya
 libkaya-mysql-dev - MySQL binding for kaya
 libkaya-ncurses-dev - Ncurses binding for kaya
 libkaya-ncursesw-dev - Ncurses binding for kaya
 libkaya-pgsql-dev - PostgreSQL binding for kaya
 libkaya-sdl-dev - SDL binding for kaya
 libkaya-sqlite3-dev - SQLite binding for kaya
Closes: 495521
Changes: 
 kaya (0.4.2-3) unstable; urgency=low
 .
   * Tweak to stack size in build for ia64
   * Patch to fix data corruption bugs. Thanks to Chris Morris. Closes: #495521.
Checksums-Sha1: 
 f15cd8cdcbd65f3feeb61669fdf301c0494af207 1361 kaya_0.4.2-3.dsc
 32f694ba5575d8ced9dd9b3e70113952bf55149a 28808 kaya_0.4.2-3.diff.gz
 7c1f5fe2f98dc7b2c58e76a9521c3500ff608628 2728560 kaya_0.4.2-3_all.deb
 cb51c12e456de15a1dd2b33d124d2492c72a9321 27238 
libkaya-pgsql-dev_0.4.2-3_all.deb
 e77ce0916834fd9d3f40afc7ed4777f62e6d2c01 29928 
libkaya-mysql-dev_0.4.2-3_all.deb
 23cf3f12857c2a1956b04166ec497735397b3025 27902 
libkaya-sqlite3-dev_0.4.2-3_all.deb
 88cbbdc9c0ca6be4568048bc3704045aedf4f1ea 31974 libkaya-gd-dev_0.4.2-3_all.deb
 3e3ef1acda54db83f4ade98d29f039761ec1daac 41268 libkaya-sdl-dev_0.4.2-3_all.deb
 91586452a77c43472505b65f6b521cd7f6e28075 86214 
libkaya-ncurses-dev_0.4.2-3_all.deb
 ed407629c0db1c86b7ca1ceaead165ec662284eb 44950 libkaya-gl-dev_0.4.2-3_all.deb
 fdf7ddfc3ad167f88e407d9f4f17d2943fb897d0 86550 
libkaya-ncursesw-dev_0.4.2-3_all.deb
Checksums-Sha256: 
 9ef83509881f17be0b5932016c081652c011d7d2912255974018ad7e4ab177ea 1361 
kaya_0.4.2-3.dsc
 543dc88e1258050a902fb99331581450796a244000b2d09af079a8c80c9a221b 28808 
kaya_0.4.2-3.diff.gz
 e2db99e4b1a386c9196c4dd821c8c4703a2393076838f76ed9302fb7ba928259 2728560 
kaya_0.4.2-3_all.deb
 b61ab7fd700974540b167a63a3474c021af577323755f42d7e2e2e8fb5d59867 27238 
libkaya-pgsql-dev_0.4.2-3_all.deb
 ac60bb09db028f300087290d9ab00664e440d12f6c40c94dd943eaf6fd226a76 29928 
libkaya-mysql-dev_0.4.2-3_all.deb
 8cb278a9da6c8788a9cb9a3cc4171e14f8f2ef6b5d1314467cff62be44715f03 27902 
libkaya-sqlite3-dev_0.4.2-3_all.deb
 f192f3518fe480a8448591f25f589280b57e5775a832917f06e25ba1ba2a129a 31974 
libkaya-gd-dev_0.4.2-3_all.deb
 20a87ab6f1fbe422f4cee89d459b79cd487c692a799b60b470163596453aacf4 41268 
libkaya-sdl-dev_0.4.2-3_all.deb
 7244f5bf99db76164f42bf53fcc70162db3ef4ea1878eff59b7f86fbd5828b7a 86214 
libkaya-ncurses-dev_0.4.2-3_all.deb
 c90eeb5ab5761fb45012b3541e370d6f20cd1fd41f4008916cde7bee1a5184f2 44950 
libkaya-gl-dev_0.4.2-3_all.deb
 adf9bfe9af320c4be13d7a477e26c3b7a7802f3ecba64d693f59e79ea2243743 86550 
libkaya-ncursesw-dev_0.4.2-3_all.deb
Files: 
 1c68bedfda4c0527272b819cbc32c8e8 1361 devel extra kaya_0.4.2-3.dsc
 8bb10bc2954e7fb942289a549c7ea2c4 28808 devel extra kaya_0.4.2-3.diff.gz
 1e3e919ede375e0fcb9d727e23f2f843 2728560 devel extra kaya_0.4.2-3_all.deb
 335a4a1bb8e30a6c87b9ca6b7ae8ec7e 27238 libdevel extra 
libkaya-pgsql-dev_0.4.2-3_all.deb
 9ea4702f3a821a92b0c92b410c42394d 29928 libdevel extra 
libkaya-mysql-dev_0.4.2-3_all.deb
 e8ce1975664116cb573a6f852b0e85cb 27902 libdevel extra 
libkaya-sqlite3-dev_0.4.2-3_all.deb
 c068a29549910e3862691392c0c460b0 31974 libdevel extra 
libkaya-gd-dev_0.4.2-3_all.deb
 a5b4dd0b64cd45d0e36bd17ea30c9149 41268 libdevel extra 
libkaya-sdl-dev_0.4.2-3_all.deb
 dccd4e1e542c8cdc54f6371f5b57a1ee 86214 libdevel extra 
libkaya-ncurses-dev_0.4.2-3_all.deb
 294ca73180b95f52c0f8546deabe980e 44950 libdevel extra 
libkaya-gl-dev_0.4.2-3_all.deb
 3222541f0ca17c99bf8f92fbaaf5a902 86550 libdevel extra 
libkaya-ncursesw-dev_0.4.2-3_all.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)

iEYEARECAAYFAkiz12kACgkQqXWYex+fp+5HWACfeKHNS8IiuYuBDFDv2Us4JIFe
vmQAmwf+aLrsVTAGuPVw4sgnOzHUFf8V
=rMaJ
-----END PGP SIGNATURE-----



--- End Message ---

Reply via email to