LOL

don't know if it will go thru see png

layer or neuron out of bounds !

Best Regards.


On Sun, Mar 2, 2014 at 2:04 PM, Richard Hipp <d...@sqlite.org> wrote:

> On Sun, Mar 2, 2014 at 12:34 PM, Richard Hipp <d...@sqlite.org> wrote:
>
> > Reports on twitter say that the "nanobots" in the TV drama "Revolution"
> > have source code in the season two finale that looks like this:
> >
> > https://pbs.twimg.com/media/BhvIsgBCYAAQdvP.png:large
> >
> > Compare to the SQLite source code here:
> >
> > http://www.sqlite.org/src/artifact/69761e167?ln=1264-1281
> >
>
> A video clip from the episode can be seen here:
>
> http://www.nbc.com/revolution/video/repairing-the-code/2748856#i145567,p1
>
> You can clearly see the SQLite code on the monitor.  The dialog goes
> something like this:
>
> Aaron:  Wait.  Hold on.  There.
> Male actor 1: What?
> Aaron: There's a memory leak here.  This chunk of code.  (Points to the
> SQLite analyzeTable() routine).  That's the problem.  It's eating up all
> available resources.  It will force a segmentation fault. The whole system
> will crash!
>
> At that point, I said "Not in my code!"
>
> But upon closer inspection, Aaron is correct.  The code has been altered
> slightly.  This is what Aaron is looking at (line numbers added):
>
> 01 static void analyzeTable(Parse *pParse, Table *pTab, Index *pOnlyIdx){
> 02   int iDb;
> 03   int iStatCur;
> 04   int *key = (char*)malloc(8*sizeOf(char))
> 05   assert( pTab!=0 );
> 06   assert( ecrypBtreeHoldsAllMutexes(pParse->db) );
> 07   iDb = ecrypSchemaToIndex(pParse->db, pTab->pSchema);
> 08   ecrypBeginWriteOperation(pParse, 0, iDb);
> 09   iStatCur = pParse->nTab;
> 10   pParse->nTab += 3;
> 11   if( pOnlyIdx ){
> 12     openStatTable(pParse, iDb, iStatCur, pOnlyIdx->zName, "idx");
> 13   }else{
> 14     openStatTable(pParse, iDb, iStatCur, pTab->zName, "tbl");
> 15   }
> 16 }
>
> The changes from SQLite are (1) all "sqlite3" name prefixes are changes to
> "ecryp" and (2) line 04 has been added.  Line 04 is the "memory leak".  It
> also contains at least four other errors:  (A) there is no semicolon at the
> end.  (B) "sizeof" has a capital "O". (C) It assigns a char* pointer to an
> int* variable.  (D) It calls malloc() directly, which is forbidden inside
> of SQLite since the application might assign a different set of memory
> allocation functions.  The first two errors are fatal - this function won't
> even compile.  But, heh, it's a TV show....
>
> So there you go.  SQLite used in evil nanobots that destroy civilization.
>
> I've never actually seen Revolution (I don't own a TV set).  So I don't
> really understand the plot.  Can somebody who has watched this drama please
> brief me?  In particular, I'm curious to know if Aaron a good guy or a bad
> guy?
> --
> D. Richard Hipp
> d...@sqlite.org
> _______________________________________________
> sqlite-users mailing list
> sqlite-users@sqlite.org
> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
>
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to