Fossil

Diff
Login

Differences From Artifact [010635bda3]:

To Artifact [29937548ac]:


88
89
90
91
92
93
94
95
96



97
98
99
100
101
102
103
88
89
90
91
92
93
94


95
96
97
98
99
100
101
102
103
104







-
-
+
+
+







  }

  db_begin_transaction();
  p = manifest_get(vid, CFTYPE_MANIFEST);
  if( p==0 ) return;
  db_multi_exec("DELETE FROM vfile WHERE vid=%d", vid);
  db_prepare(&ins,
    "INSERT INTO vfile(vid,isexe,islink,rid,mrid,pathname) "
    " VALUES(:vid,:isexe,:islink,:id,:id,:name)");
    "INSERT INTO vfile(id,vid,isexe,islink,rid,mrid,pathname) "
    " VALUES(1+(SELECT coalesce(max(id),0) FROM vfile),"
            ":vid,:isexe,:islink,:id,:id,:name)");
  db_prepare(&ridq, "SELECT rid,size FROM blob WHERE uuid=:uuid");
  db_bind_int(&ins, ":vid", vid);
  manifest_file_rewind(p);
  while( (pFile = manifest_file_next(p,0))!=0 ){
    if( pFile->zUuid==0 || uuid_is_shunned(pFile->zUuid) ) continue;
    db_bind_text(&ridq, ":uuid", pFile->zUuid);
    if( db_step(&ridq)==SQLITE_ROW ){