1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-08-05 15:55:57 +03:00

Roll back [84e38341aeab] because a direct pointer comparison is ill-advised when the client-data string is dynamically allocated.

FossilOrigin-Name: 7b884832b71c23e62ba3c0d53f7c89199734c351f909d84ac19ac18c7ddccbd8
This commit is contained in:
stephan
2023-09-10 10:56:28 +00:00
parent 93b461ff00
commit 7fa8d65539
3 changed files with 11 additions and 12 deletions

View File

@@ -3725,7 +3725,7 @@ void *sqlite3_get_clientdata(sqlite3 *db, const char *zName){
DbClientData *p;
sqlite3_mutex_enter(db->mutex);
for(p=db->pDbData; p; p=p->pNext){
if( zName==p->zName || strcmp(p->zName, zName)==0 ){
if( strcmp(p->zName, zName)==0 ){
void *pResult = p->pData;
sqlite3_mutex_leave(db->mutex);
return pResult;
@@ -3747,9 +3747,7 @@ int sqlite3_set_clientdata(
DbClientData *p, **pp;
sqlite3_mutex_enter(db->mutex);
pp = &db->pDbData;
for(p=db->pDbData;
p && (zName!=p->zName && strcmp(p->zName,zName));
p=p->pNext){
for(p=db->pDbData; p && strcmp(p->zName,zName); p=p->pNext){
pp = &p->pNext;
}
if( p ){