1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-07-29 08:01:23 +03:00

Fix a problem causing sqlite3changeset_concat() to fail to detect attempts to concatenate patchsets which changesets.

FossilOrigin-Name: 236704a9d1551a50a55bd6e0b6473191a7a7dd21
This commit is contained in:
dan
2014-10-15 20:02:21 +00:00
parent f11b256b0b
commit abae0c4f1d
4 changed files with 204 additions and 7 deletions

View File

@ -3911,12 +3911,18 @@ int sessionChangesetConcat(
assert( xOutput==0 || (ppOut==0 && pnOut==0) );
assert( pLeft->zTab==0 && pRight->zTab==0 );
rc = sessionChangesetToHash(pLeft, &pList);
assert( pLeft->zTab || pList==0 );
if( rc==SQLITE_OK ){
rc = sessionChangesetToHash(pRight, &pList);
}
bPatch = pLeft->bPatchset || pRight->bPatchset;
if( pLeft->zTab && pRight->zTab && pLeft->bPatchset!=pRight->bPatchset ){
rc = SQLITE_ERROR;
}
/* Create the serialized output changeset based on the contents of the
** hash tables attached to the SessionTable objects in list pList.
*/