Skip to content

Commit 8846bad

Browse files
committed
Fix compile error for SQLCipher 4.1.0
1 parent c6c9f02 commit 8846bad

File tree

5 files changed

+167
-27
lines changed

5 files changed

+167
-27
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<Scheme
3+
LastUpgradeVersion = "1400"
4+
version = "1.3">
5+
<BuildAction
6+
parallelizeBuildables = "YES"
7+
buildImplicitDependencies = "YES">
8+
<BuildActionEntries>
9+
<BuildActionEntry
10+
buildForTesting = "YES"
11+
buildForRunning = "YES"
12+
buildForProfiling = "YES"
13+
buildForArchiving = "YES"
14+
buildForAnalyzing = "YES">
15+
<BuildableReference
16+
BuildableIdentifier = "primary"
17+
BlueprintIdentifier = "23D5CCFC1EB8616D00A5B8F9"
18+
BuildableName = "Sample"
19+
BlueprintName = "Sample"
20+
ReferencedContainer = "container:WCDB.xcodeproj">
21+
</BuildableReference>
22+
</BuildActionEntry>
23+
</BuildActionEntries>
24+
</BuildAction>
25+
<TestAction
26+
buildConfiguration = "Debug"
27+
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
28+
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
29+
shouldUseLaunchSchemeArgsEnv = "YES">
30+
<Testables>
31+
</Testables>
32+
</TestAction>
33+
<LaunchAction
34+
buildConfiguration = "Release"
35+
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
36+
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
37+
launchStyle = "0"
38+
useCustomWorkingDirectory = "NO"
39+
ignoresPersistentStateOnLaunch = "NO"
40+
debugDocumentVersioning = "YES"
41+
debugServiceExtension = "internal"
42+
allowLocationSimulation = "YES"
43+
viewDebuggingEnabled = "No">
44+
<BuildableProductRunnable
45+
runnableDebuggingMode = "0">
46+
<BuildableReference
47+
BuildableIdentifier = "primary"
48+
BlueprintIdentifier = "23D5CCFC1EB8616D00A5B8F9"
49+
BuildableName = "Sample"
50+
BlueprintName = "Sample"
51+
ReferencedContainer = "container:WCDB.xcodeproj">
52+
</BuildableReference>
53+
</BuildableProductRunnable>
54+
</LaunchAction>
55+
<ProfileAction
56+
buildConfiguration = "Release"
57+
shouldUseLaunchSchemeArgsEnv = "YES"
58+
savedToolIdentifier = ""
59+
useCustomWorkingDirectory = "NO"
60+
debugDocumentVersioning = "YES">
61+
<BuildableProductRunnable
62+
runnableDebuggingMode = "0">
63+
<BuildableReference
64+
BuildableIdentifier = "primary"
65+
BlueprintIdentifier = "23D5CCFC1EB8616D00A5B8F9"
66+
BuildableName = "Sample"
67+
BlueprintName = "Sample"
68+
ReferencedContainer = "container:WCDB.xcodeproj">
69+
</BuildableReference>
70+
</BuildableProductRunnable>
71+
</ProfileAction>
72+
<AnalyzeAction
73+
buildConfiguration = "Debug">
74+
</AnalyzeAction>
75+
<ArchiveAction
76+
buildConfiguration = "Release"
77+
revealArchiveInOrganizer = "YES">
78+
</ArchiveAction>
79+
</Scheme>

repair/sqliterk_output.cpp

+8-20
Original file line numberDiff line numberDiff line change
@@ -278,18 +278,6 @@ static constexpr char SQLITE_AFF_TEXT = 'B';
278278
static constexpr char SQLITE_AFF_NUMERIC = 'C';
279279
static constexpr char SQLITE_AFF_INTEGER = 'D';
280280
static constexpr char SQLITE_AFF_REAL = 'E';
281-
static constexpr uint32_t string_digits(const char *s)
282-
{
283-
uint32_t h = 0;
284-
if (s[0] == '\0') return h;
285-
h = s[0] << 24;
286-
if (s[1] == '\0') return h;
287-
h |= s[1] << 16;
288-
if (s[2] == '\0') return h;
289-
h |= s[2] << 8;
290-
h |= s[3];
291-
return h;
292-
}
293281

294282
static char parse_affinity(const char *type)
295283
{
@@ -301,22 +289,22 @@ static char parse_affinity(const char *type)
301289
char aff = SQLITE_AFF_NUMERIC;
302290
do {
303291
h = (h << 8) + toupper((*type++) & 0xFF);
304-
if ((h << 8) == string_digits("INT")) {
292+
if ((h << 8) == ('I'<<16)+('N'<<8)+'T') {
305293
aff = SQLITE_AFF_INTEGER;
306294
} else {
307295
switch (h) {
308-
case string_digits("CHAR"):
309-
case string_digits("CLOB"):
310-
case string_digits("TEXT"):
296+
case ('C'<<24)+('H'<<16)+('A'<<8)+'R':/* CHAR */
297+
case ('C'<<24)+('L'<<16)+('O'<<8)+'B':/* CLOB */
298+
case ('T'<<24)+('E'<<16)+('X'<<8)+'T':/* TEXT */
311299
aff = SQLITE_AFF_TEXT;
312300
break;
313-
case string_digits("BLOB"):
301+
case ('B'<<24)+('L'<<16)+('O'<<8)+'B':/* BLOB */
314302
if (aff == SQLITE_AFF_NUMERIC || aff == SQLITE_AFF_REAL)
315303
aff = SQLITE_AFF_BLOB;
316304
break;
317-
case string_digits("REAL"):
318-
case string_digits("FLOA"):
319-
case string_digits("DOUB"):
305+
case ('R'<<24)+('E'<<16)+('A'<<8)+'L':/* REAL */
306+
case ('F'<<24)+('L'<<16)+('O'<<8)+'A':/* FLOA */
307+
case ('D'<<24)+('O'<<16)+('U'<<8)+'B':/* DOUB */
320308
if (aff == SQLITE_AFF_NUMERIC)
321309
aff = SQLITE_AFF_REAL;
322310
break;

swift/source/util/sqlcipher.xcodeproj/project.pbxproj

+27-6
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,12 @@
77
objects = {
88

99
/* Begin PBXBuildFile section */
10+
0D5F9732296521A5007A2537 /* upsert.c in Sources */ = {isa = PBXBuildFile; fileRef = 0D5F9730296521A5007A2537 /* upsert.c */; };
11+
0D5F9733296521A5007A2537 /* window.c in Sources */ = {isa = PBXBuildFile; fileRef = 0D5F9731296521A5007A2537 /* window.c */; };
1012
232DA3221FB0700A0075F021 /* callback.c in Sources */ = {isa = PBXBuildFile; fileRef = 232DA3211FB070090075F021 /* callback.c */; };
1113
232DA3241FB070110075F021 /* loadext.c in Sources */ = {isa = PBXBuildFile; fileRef = 232DA3231FB070110075F021 /* loadext.c */; };
1214
232DA3261FB070180075F021 /* rowset.c in Sources */ = {isa = PBXBuildFile; fileRef = 232DA3251FB070180075F021 /* rowset.c */; };
1315
232DA3281FB070210075F021 /* treeview.c in Sources */ = {isa = PBXBuildFile; fileRef = 232DA3271FB070210075F021 /* treeview.c */; };
14-
232DA32A1FB0703C0075F021 /* userauth.c in Sources */ = {isa = PBXBuildFile; fileRef = 232DA3291FB0703C0075F021 /* userauth.c */; };
1516
232DA32C1FB070540075F021 /* vtab.c in Sources */ = {isa = PBXBuildFile; fileRef = 232DA32B1FB070530075F021 /* vtab.c */; };
1617
232DA32E1FB070640075F021 /* btmutex.c in Sources */ = {isa = PBXBuildFile; fileRef = 232DA32D1FB070640075F021 /* btmutex.c */; };
1718
232DA3301FB0706B0075F021 /* btree.c in Sources */ = {isa = PBXBuildFile; fileRef = 232DA32F1FB0706B0075F021 /* btree.c */; };
@@ -113,13 +114,14 @@
113114
/* End PBXBuildFile section */
114115

115116
/* Begin PBXFileReference section */
117+
0D5F9730296521A5007A2537 /* upsert.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = upsert.c; sourceTree = "<group>"; };
118+
0D5F9731296521A5007A2537 /* window.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = window.c; sourceTree = "<group>"; };
116119
23121C071E6FFA890012B45E /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = System/Library/Frameworks/Security.framework; sourceTree = SDKROOT; };
117120
232DA3201FB06FFD0075F021 /* keywordhash.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = keywordhash.h; path = ../keywordhash.h; sourceTree = "<group>"; };
118121
232DA3211FB070090075F021 /* callback.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = callback.c; sourceTree = "<group>"; };
119122
232DA3231FB070110075F021 /* loadext.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = loadext.c; sourceTree = "<group>"; };
120123
232DA3251FB070180075F021 /* rowset.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = rowset.c; sourceTree = "<group>"; };
121124
232DA3271FB070210075F021 /* treeview.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = treeview.c; sourceTree = "<group>"; };
122-
232DA3291FB0703C0075F021 /* userauth.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = userauth.c; path = ../ext/userauth/userauth.c; sourceTree = "<group>"; };
123125
232DA32B1FB070530075F021 /* vtab.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = vtab.c; sourceTree = "<group>"; };
124126
232DA32D1FB070640075F021 /* btmutex.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = btmutex.c; sourceTree = "<group>"; };
125127
232DA32F1FB0706B0075F021 /* btree.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = btree.c; sourceTree = "<group>"; };
@@ -292,12 +294,13 @@
292294
23121B7C1E6FF93D0012B45E /* src */ = {
293295
isa = PBXGroup;
294296
children = (
297+
0D5F9730296521A5007A2537 /* upsert.c */,
298+
0D5F9731296521A5007A2537 /* window.c */,
295299
232DA3201FB06FFD0075F021 /* keywordhash.h */,
296300
232DA3211FB070090075F021 /* callback.c */,
297301
232DA3231FB070110075F021 /* loadext.c */,
298302
232DA3251FB070180075F021 /* rowset.c */,
299303
232DA3271FB070210075F021 /* treeview.c */,
300-
232DA3291FB0703C0075F021 /* userauth.c */,
301304
232DA32B1FB070530075F021 /* vtab.c */,
302305
232DA32D1FB070640075F021 /* btmutex.c */,
303306
232DA32F1FB0706B0075F021 /* btree.c */,
@@ -507,6 +510,7 @@
507510
developmentRegion = English;
508511
hasScannedForEncodings = 0;
509512
knownRegions = (
513+
English,
510514
en,
511515
);
512516
mainGroup = 23121ADB1E6FF9110012B45E;
@@ -575,7 +579,6 @@
575579
232DA37B1FB0716B0075F021 /* mutex_noop.c in Sources */,
576580
232DA3A81FB0823F0075F021 /* func.c in Sources */,
577581
232DA3371FB070BB0075F021 /* fts3_aux.c in Sources */,
578-
232DA32A1FB0703C0075F021 /* userauth.c in Sources */,
579582
232DA3701FB071460075F021 /* malloc.c in Sources */,
580583
232DA3C91FB082A90075F021 /* insert.c in Sources */,
581584
232DA3961FB071AC0075F021 /* pcache.c in Sources */,
@@ -597,6 +600,7 @@
597600
232DA4051FB0836E0075F021 /* vdbemem.c in Sources */,
598601
232DA3F81FB0836E0075F021 /* utf.c in Sources */,
599602
232DA3221FB0700A0075F021 /* callback.c in Sources */,
603+
0D5F9732296521A5007A2537 /* upsert.c in Sources */,
600604
232DA3391FB070C00075F021 /* fts3_expr.c in Sources */,
601605
232DA39F1FB082040075F021 /* tokenize.c in Sources */,
602606
232DA3921FB071A70075F021 /* pager.c in Sources */,
@@ -617,6 +621,7 @@
617621
232DA32E1FB070640075F021 /* btmutex.c in Sources */,
618622
232DA35B1FB071120075F021 /* notify.c in Sources */,
619623
232DA3D51FB082F30075F021 /* json1.c in Sources */,
624+
0D5F9733296521A5007A2537 /* window.c in Sources */,
620625
232DA36E1FB071460075F021 /* mem1.c in Sources */,
621626
232DA3721FB071460075F021 /* mem5.c in Sources */,
622627
232DA3F91FB0836E0075F021 /* vdbe.c in Sources */,
@@ -698,6 +703,7 @@
698703
"USE_PREAD=1",
699704
"SQLITE_TEMP_STORE=2",
700705
SQLCIPHER_PREPROCESSED,
706+
HAVE_UTIME,
701707
HAVE_USLEEP,
702708
"SQLITE_MALLOC_SOFT_LIMIT=0",
703709
"SQLITE_WCDB_SIGNAL_RETRY=1",
@@ -709,9 +715,16 @@
709715
SQLITE_OMIT_DEPRECATED,
710716
SQLITE_OMIT_PROGRESS_CALLBACK,
711717
SQLITE_OMIT_SHARED_CACHE,
712-
OMIT_CONSTTIME_MEM,
713718
OMIT_MEMLOCK,
719+
SQLITE_WCDB_CHECKPOINT_HANDLER,
720+
SQLITE_MMAP_READWRITE,
721+
SQLITE_ENABLE_DBSTAT_VTAB,
722+
SQLITE_WCDB_DIRTY_PAGE_COUNT,
714723
SQLITE_ENABLE_FTS3_TOKENIZER,
724+
"SQLITE_PRINT_BUF_SIZE=256",
725+
"SQLITE_MAX_ATTACHED=64",
726+
SQLITE_USE_ALLOCA,
727+
"SQLITE_DEBUG=1",
715728
);
716729
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
717730
GCC_WARN_UNDECLARED_SELECTOR = YES;
@@ -788,6 +801,7 @@
788801
SQLCIPHER_CRYPTO_CC,
789802
"USE_PREAD=1",
790803
SQLCIPHER_PREPROCESSED,
804+
HAVE_UTIME,
791805
HAVE_USLEEP,
792806
"SQLITE_MALLOC_SOFT_LIMIT=0",
793807
"SQLITE_WCDB_SIGNAL_RETRY=1",
@@ -799,9 +813,16 @@
799813
SQLITE_OMIT_PROGRESS_CALLBACK,
800814
SQLITE_OMIT_SHARED_CACHE,
801815
SQLITE_ENABLE_COLUMN_METADATA,
802-
OMIT_CONSTTIME_MEM,
803816
OMIT_MEMLOCK,
804817
SQLITE_ENABLE_FTS3_TOKENIZER,
818+
SQLITE_ENABLE_DBSTAT_VTAB,
819+
SQLITE_WCDB_CHECKPOINT_HANDLER,
820+
SQLITE_MMAP_READWRITE,
821+
SQLITE_WCDB_DIRTY_PAGE_COUNT,
822+
"SQLITE_PRINT_BUF_SIZE=256",
823+
"SQLITE_MAX_ATTACHED=64",
824+
SQLITE_USE_ALLOCA,
825+
"NDEBUG=1",
805826
);
806827
GCC_SYMBOLS_PRIVATE_EXTERN = YES;
807828
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<Scheme
3+
LastUpgradeVersion = "1400"
4+
version = "1.3">
5+
<BuildAction
6+
parallelizeBuildables = "YES"
7+
buildImplicitDependencies = "YES">
8+
</BuildAction>
9+
<TestAction
10+
buildConfiguration = "Debug"
11+
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
12+
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
13+
shouldUseLaunchSchemeArgsEnv = "YES">
14+
<Testables>
15+
<TestableReference
16+
skipped = "NO">
17+
<BuildableReference
18+
BuildableIdentifier = "primary"
19+
BlueprintIdentifier = "23516BB01FD033A900B465DD"
20+
BuildableName = "All Testcases.xctest"
21+
BlueprintName = "All Testcases"
22+
ReferencedContainer = "container:testcase.xcodeproj">
23+
</BuildableReference>
24+
</TestableReference>
25+
</Testables>
26+
</TestAction>
27+
<LaunchAction
28+
buildConfiguration = "Debug"
29+
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
30+
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
31+
launchStyle = "0"
32+
useCustomWorkingDirectory = "NO"
33+
ignoresPersistentStateOnLaunch = "NO"
34+
debugDocumentVersioning = "YES"
35+
debugServiceExtension = "internal"
36+
allowLocationSimulation = "YES">
37+
</LaunchAction>
38+
<ProfileAction
39+
buildConfiguration = "Release"
40+
shouldUseLaunchSchemeArgsEnv = "YES"
41+
savedToolIdentifier = ""
42+
useCustomWorkingDirectory = "NO"
43+
debugDocumentVersioning = "YES">
44+
</ProfileAction>
45+
<AnalyzeAction
46+
buildConfiguration = "Debug">
47+
</AnalyzeAction>
48+
<ArchiveAction
49+
buildConfiguration = "Release"
50+
revealArchiveInOrganizer = "YES">
51+
</ArchiveAction>
52+
</Scheme>

0 commit comments

Comments
 (0)