NS_IMETHODIMP nsMsgHdr::GetDate(PRTime *result) { if (!(m_initedValues & CACHED_VALUES_INITED)) InitCachedValues(); *result = m_date; return NS_OK; }
NS_IMETHODIMP nsMsgHdr::GetThreadId(nsMsgKey *result) { if (!(m_initedValues & CACHED_VALUES_INITED)) InitCachedValues(); if (result) { *result = m_threadId; return NS_OK; } return NS_ERROR_NULL_POINTER; }
nsMsgThread::nsMsgThread(nsMsgDatabase *db, nsIMdbTable *table) { MOZ_COUNT_CTOR(nsMsgThread); Init(); m_mdbTable = table; m_mdbDB = db; if (db) db->AddRef(); if (table && db) { table->GetMetaRow(db->GetEnv(), nsnull, nsnull, &m_metaRow); InitCachedValues(); } }
nsMsgThread::nsMsgThread(nsMsgDatabase *db, nsIMdbTable *table) { MOZ_COUNT_CTOR(nsMsgThread); Init(); m_mdbTable = table; m_mdbDB = db; if (db) db->m_threads.AppendElement(this); else NS_ERROR("no db for thread"); #ifdef DEBUG_David_Bienvenu if (m_mdbDB->m_threads.Length() > 5) printf("more than five outstanding threads\n"); #endif if (table && db) { table->GetMetaRow(db->GetEnv(), nullptr, nullptr, getter_AddRefs(m_metaRow)); InitCachedValues(); } }