Skip to content

Instantly share code, notes, and snippets.

@alaborie
alaborie / gist:3100972
Created July 12, 2012 21:01
Clang 3.1: interesting warning...
@protocol MyProtocol <NSObject>
@end
int main(int argc, char *argv[])
{
@autoreleasepool
{
id <MyProtocol> foo = nil;
__unused id value = [foo valueForKey:@"bar"];
@alaborie
alaborie / gist:2938856
Created June 15, 2012 21:47
enumerateObjectsUsingBlock nested in an autorelease pool?
NSError *error = nil;
void (^block)(NSError **error);
block = ^(NSError **blockError)
{
NSArray *array = [NSArray arrayWithObject:@"hello"];
[array enumerateObjectsUsingBlock:^(id object, NSUInteger index, BOOL *stop) {
if ( blockError != NULL )
{
@alaborie
alaborie / SafariCache-Proper.sql
Created October 21, 2011 22:32
Schema of the database used by Safari to cache URL request.
PRAGMA foreign_keys=OFF;
BEGIN TRANSACTION;
CREATE TABLE cfurl_cache_schema_version(schema_version INTEGER);
CREATE TABLE cfurl_cache_response(entry_ID INTEGER PRIMARY KEY AUTOINCREMENT UNIQUE, version INTEGER, hash_value INTEGER, storage_policy INTEGER, request_key TEXT UNIQUE, time_stamp NOT NULL DEFAULT CURRENT_TIMESTAMP);
CREATE TABLE cfurl_cache_blob_data(entry_ID INTEGER PRIMARY KEY, response_object BLOB, request_object BLOB, proto_props BLOB, user_info BLOB);
CREATE TABLE cfurl_cache_receiver_data(entry_ID INTEGER PRIMARY KEY, receiver_data BLOB);
DELETE FROM sqlite_sequence;
CREATE INDEX request_key_index ON cfurl_cache_response(request_key);
CREATE INDEX time_stamp_index ON cfurl_cache_response(time_stamp);
CREATE INDEX proto_props_index ON cfurl_cache_blob_data(entry_ID);