summaryrefslogtreecommitdiff
path: root/core/fxcrt/include
diff options
context:
space:
mode:
authortsepez <tsepez@chromium.org>2016-08-26 15:17:12 -0700
committerCommit bot <commit-bot@chromium.org>2016-08-26 15:17:13 -0700
commit987f3ee94c3cb8e4a6113ad05453a2948469386c (patch)
treefbd1fdc800c2510c89ae043331a799a42c3251af /core/fxcrt/include
parent83d2351fd64128156c9abfb70266133d58a5e525 (diff)
downloadpdfium-987f3ee94c3cb8e4a6113ad05453a2948469386c.tar.xz
Make CFX_CountRef<>::m_pObject private, add accessors, fix const-ness.
Hide the CountedObj class from the rest of the code. Rename GetModify() to GetPrivateCopy(), since it turns out there are places where we modify a potentially-shared copy. Add non-const version of GetObject() to permit these. Review-Url: https://codereview.chromium.org/2287633002
Diffstat (limited to 'core/fxcrt/include')
-rw-r--r--core/fxcrt/include/cfx_count_ref.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/core/fxcrt/include/cfx_count_ref.h b/core/fxcrt/include/cfx_count_ref.h
index 7dbd5dfe26..817ce95add 100644
--- a/core/fxcrt/include/cfx_count_ref.h
+++ b/core/fxcrt/include/cfx_count_ref.h
@@ -30,10 +30,11 @@ class CFX_CountRef {
}
void SetNull() { m_pObject.Reset(); }
+ ObjClass* GetObject() { return m_pObject.Get(); }
const ObjClass* GetObject() const { return m_pObject.Get(); }
template <typename... Args>
- ObjClass* GetModify(Args... params) {
+ ObjClass* GetPrivateCopy(Args... params) {
if (!m_pObject)
return New(params...);
if (!m_pObject->HasOneRef())
@@ -47,7 +48,7 @@ class CFX_CountRef {
bool operator!=(const CFX_CountRef& that) const { return !(*this == that); }
operator bool() const { return m_pObject; }
- protected:
+ private:
class CountedObj : public ObjClass {
public:
template <typename... Args>