Small. Fast. Reliable.
Choose any three.

Session Module C Interface

Finalize A Changeset Iterator

int sqlite3changeset_finalize(sqlite3_changeset_iter *pIter);

This function is used to finalize an iterator allocated with sqlite3changeset_start().

This function should only be called on iterators created using the sqlite3changeset_start() function. If an application calls this function with an iterator passed to a conflict-handler by sqlite3changeset_apply(), SQLITE_MISUSE is immediately returned and the call has no effect.

If an error was encountered within a call to an sqlite3changeset_xxx() function (for example an SQLITE_CORRUPT in sqlite3changeset_next() or an SQLITE_NOMEM in sqlite3changeset_new()) then an error code corresponding to that error is returned by this function. Otherwise, SQLITE_OK is returned. This is to allow the following pattern (pseudo-code):

  sqlite3changeset_start();
  while( SQLITE_ROW==sqlite3changeset_next() ){
    // Do something with change.
  }
  rc = sqlite3changeset_finalize();
  if( rc!=SQLITE_OK ){
    // An error has occurred 
  }

See also lists of Objects, Constants, and Functions.