Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(887)

Side by Side Diff: Source/modules/webdatabase/DatabaseManager.h

Issue 397733004: Allow assertions to be enabled in Blink Release builds. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Fixed config.gni. Minor cleanups. Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2012 Apple Inc. All rights reserved. 2 * Copyright (C) 2012 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
54 class DatabaseManager { 54 class DatabaseManager {
55 WTF_MAKE_NONCOPYABLE(DatabaseManager); WTF_MAKE_FAST_ALLOCATED; 55 WTF_MAKE_NONCOPYABLE(DatabaseManager); WTF_MAKE_FAST_ALLOCATED;
56 public: 56 public:
57 static DatabaseManager& manager(); 57 static DatabaseManager& manager();
58 58
59 // These 2 methods are for DatabaseContext (un)registration, and should only 59 // These 2 methods are for DatabaseContext (un)registration, and should only
60 // be called by the DatabaseContext constructor and destructor. 60 // be called by the DatabaseContext constructor and destructor.
61 void registerDatabaseContext(DatabaseContext*); 61 void registerDatabaseContext(DatabaseContext*);
62 void unregisterDatabaseContext(DatabaseContext*); 62 void unregisterDatabaseContext(DatabaseContext*);
63 63
64 #if ASSERT_ENABLED 64 #if ENABLE(ASSERT)
65 void didConstructDatabaseContext(); 65 void didConstructDatabaseContext();
66 void didDestructDatabaseContext(); 66 void didDestructDatabaseContext();
67 #else 67 #else
68 void didConstructDatabaseContext() { } 68 void didConstructDatabaseContext() { }
69 void didDestructDatabaseContext() { } 69 void didDestructDatabaseContext() { }
70 #endif 70 #endif
71 71
72 static void throwExceptionForDatabaseError(DatabaseError, const String& erro rMessage, ExceptionState&); 72 static void throwExceptionForDatabaseError(DatabaseError, const String& erro rMessage, ExceptionState&);
73 73
74 PassRefPtrWillBeRawPtr<Database> openDatabase(ExecutionContext*, const Strin g& name, const String& expectedVersion, const String& displayName, unsigned long estimatedSize, PassOwnPtr<DatabaseCallback>, DatabaseError&, String& errorMessa ge); 74 PassRefPtrWillBeRawPtr<Database> openDatabase(ExecutionContext*, const Strin g& name, const String& expectedVersion, const String& displayName, unsigned long estimatedSize, PassOwnPtr<DatabaseCallback>, DatabaseError&, String& errorMessa ge);
(...skipping 25 matching lines...) Expand all
100 AbstractDatabaseServer* m_server; 100 AbstractDatabaseServer* m_server;
101 101
102 // Access to the following fields require locking m_contextMapLock: 102 // Access to the following fields require locking m_contextMapLock:
103 #if ENABLE(OILPAN) 103 #if ENABLE(OILPAN)
104 // We can't use PersistentHeapHashMap because multiple threads update the ma p. 104 // We can't use PersistentHeapHashMap because multiple threads update the ma p.
105 typedef HashMap<ExecutionContext*, OwnPtr<Persistent<DatabaseContext> > > Co ntextMap; 105 typedef HashMap<ExecutionContext*, OwnPtr<Persistent<DatabaseContext> > > Co ntextMap;
106 #else 106 #else
107 typedef HashMap<ExecutionContext*, RefPtr<DatabaseContext> > ContextMap; 107 typedef HashMap<ExecutionContext*, RefPtr<DatabaseContext> > ContextMap;
108 #endif 108 #endif
109 ContextMap m_contextMap; 109 ContextMap m_contextMap;
110 #if ASSERT_ENABLED 110 #if ENABLE(ASSERT)
111 int m_databaseContextRegisteredCount; 111 int m_databaseContextRegisteredCount;
112 int m_databaseContextInstanceCount; 112 int m_databaseContextInstanceCount;
113 #endif 113 #endif
114 Mutex m_contextMapLock; 114 Mutex m_contextMapLock;
115 }; 115 };
116 116
117 } // namespace WebCore 117 } // namespace WebCore
118 118
119 #endif // DatabaseManager_h 119 #endif // DatabaseManager_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698