summaryrefslogtreecommitdiff
path: root/xfa/fxgraphics/cxfa_gecolor.cpp
diff options
context:
space:
mode:
authorTom Sepez <tsepez@chromium.org>2018-08-20 23:17:06 +0000
committerChromium commit bot <commit-bot@chromium.org>2018-08-20 23:17:06 +0000
commit7def3de1d026a7e99017113d0f17556a3130eba5 (patch)
tree456232c126a82919c63ba67548946febeda50109 /xfa/fxgraphics/cxfa_gecolor.cpp
parent8c87547c74115d4020d5829173f96b9d798fd57a (diff)
downloadpdfium-7def3de1d026a7e99017113d0f17556a3130eba5.tar.xz
Use UnownedPtr<> in CXFA_GEColor.
Small size penalty in removing the union, but unions can lead to type errors. Change-Id: I8ff9fd63b1f87d05df18db17edbaf770226e1252 Reviewed-on: https://pdfium-review.googlesource.com/40790 Reviewed-by: Tom Sepez <tsepez@chromium.org> Reviewed-by: Lei Zhang <thestig@chromium.org> Commit-Queue: Tom Sepez <tsepez@chromium.org>
Diffstat (limited to 'xfa/fxgraphics/cxfa_gecolor.cpp')
-rw-r--r--xfa/fxgraphics/cxfa_gecolor.cpp45
1 files changed, 10 insertions, 35 deletions
diff --git a/xfa/fxgraphics/cxfa_gecolor.cpp b/xfa/fxgraphics/cxfa_gecolor.cpp
index b0dc661986..93d7565117 100644
--- a/xfa/fxgraphics/cxfa_gecolor.cpp
+++ b/xfa/fxgraphics/cxfa_gecolor.cpp
@@ -6,43 +6,18 @@
#include "xfa/fxgraphics/cxfa_gecolor.h"
-CXFA_GEColor::CXFA_GEColor() : m_type(Invalid) {}
+CXFA_GEColor::CXFA_GEColor() = default;
-CXFA_GEColor::CXFA_GEColor(const FX_ARGB argb) : m_type(Solid), m_argb(argb) {
- m_pointer.pattern = nullptr;
-}
+CXFA_GEColor::CXFA_GEColor(const FX_ARGB argb) : m_type(Solid), m_argb(argb) {}
CXFA_GEColor::CXFA_GEColor(CXFA_GEPattern* pattern, const FX_ARGB argb)
- : m_type(Pattern), m_argb(argb) {
- m_pointer.pattern = pattern;
-}
+ : m_type(Pattern), m_argb(argb), m_pPattern(pattern) {}
CXFA_GEColor::CXFA_GEColor(CXFA_GEShading* shading)
- : m_type(Shading), m_argb(0) {
- m_pointer.shading = shading;
-}
-
-CXFA_GEColor::~CXFA_GEColor() {}
-
-CXFA_GEColor& CXFA_GEColor::operator=(const CXFA_GEColor& that) {
- if (this != &that) {
- m_type = that.m_type;
- switch (m_type) {
- case Solid:
- m_argb = that.m_argb;
- m_pointer.pattern = nullptr;
- break;
- case Pattern:
- m_argb = that.m_argb;
- m_pointer.pattern = that.m_pointer.pattern;
- break;
- case Shading:
- m_argb = 0;
- m_pointer.shading = that.m_pointer.shading;
- break;
- default:
- break;
- }
- }
- return *this;
-}
+ : m_type(Shading), m_pShading(shading) {}
+
+CXFA_GEColor::CXFA_GEColor(const CXFA_GEColor& that) = default;
+
+CXFA_GEColor::~CXFA_GEColor() = default;
+
+CXFA_GEColor& CXFA_GEColor::operator=(const CXFA_GEColor& that) = default;