[70122] trunk/base/src/cregistry/registry.c
jmr at macports.org
jmr at macports.org
Thu Jul 29 23:32:20 PDT 2010
Revision: 70122
http://trac.macports.org/changeset/70122
Author: jmr at macports.org
Date: 2010-07-29 23:32:18 -0700 (Thu, 29 Jul 2010)
Log Message:
-----------
check if sqlite3_prepare returns SQLITE_BUSY in reg_open (#25400)
Modified Paths:
--------------
trunk/base/src/cregistry/registry.c
Modified: trunk/base/src/cregistry/registry.c
===================================================================
--- trunk/base/src/cregistry/registry.c 2010-07-30 06:03:33 UTC (rev 70121)
+++ trunk/base/src/cregistry/registry.c 2010-07-30 06:32:18 UTC (rev 70122)
@@ -196,8 +196,11 @@
if (initialized || can_write) {
sqlite3_stmt* stmt = NULL;
char* query = sqlite3_mprintf("ATTACH DATABASE '%q' AS registry", path);
- if (sqlite3_prepare(reg->db, query, -1, &stmt, NULL) == SQLITE_OK) {
- int r;
+ int r;
+ do {
+ r = sqlite3_prepare(reg->db, query, -1, &stmt, NULL);
+ } while (r == SQLITE_BUSY);
+ if (r == SQLITE_OK) {
/* XXX: Busy waiting, consider using sqlite3_busy_handler/timeout */
do {
sqlite3_step(stmt);
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20100729/317a616a/attachment.html>
More information about the macports-changes
mailing list