SQLite Forum

bug report: an assert() in zipfile.c that may fail
Login

bug report: an assert() in zipfile.c that may fail

(1) By Wang Ke (krking) on 2021-04-29 09:06:56 [link] [source]

Hello,

This may cause SQLite fail to execute:

-- SQLite version 3.35.5
CREATE TABLE v0 ( v1 INT, v2 VARCHAR(200)) ;
INSERT INTO v0 ( v1) VALUES ( 9223372036854775807) ;
SELECT DISTINCT zipfile ( v1 , v1 , v1, v2 ) FROM v0 ;
sqlite3: zipfileMtimeToDos: Assertion `mUnixTime<315507600 mUnixTime==zipfileMtime(pCds) ((mUnixTime % 2) && mUnixTime-1==zipfileMtime(pCds))' failed.

The code that triggers this error is as follows:

  assert( mUnixTime<315507600 
       || mUnixTime==zipfileMtime(pCds) 
       || ((mUnixTime % 2) && mUnixTime-1==zipfileMtime(pCds)) 
       /* || (mUnixTime % 2) */
  );

Hope this issue will be handled properly :)

(2) By Gunter Hick (gunter_hick) on 2021-04-29 09:34:46 in reply to 1 [link] [source]

I think it will be handled in a timely manner. There is about 20 times the age of the universe to resolve this problem.

What is the reason for creating an archive with the timestamp so far into the future?

(3) By Larry Brasfield (larrybr) on 2021-04-29 09:37:23 in reply to 1 [link] [source]

(4) By Wang Ke (krking) on 2021-04-29 09:45:39 in reply to 3 [source]

Sorry I didn't see it, thanks for your reconfirming.