aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2022-02-16 22:42:34 +0800
committercrupest <crupest@outlook.com>2022-02-16 22:42:34 +0800
commitf75ab0bd662c73d15057d746347d09bf94a992a6 (patch)
tree91efc33de481edf5304001d80b914b69cc0fb338 /include
parent2711b7032cafdc9bdbd6ae06db0325c91e6e7f63 (diff)
downloadcru-f75ab0bd662c73d15057d746347d09bf94a992a6.tar.gz
cru-f75ab0bd662c73d15057d746347d09bf94a992a6.tar.bz2
cru-f75ab0bd662c73d15057d746347d09bf94a992a6.zip
...
Diffstat (limited to 'include')
-rw-r--r--include/cru/platform/Check.h6
-rw-r--r--include/cru/ui/render/RenderObject.h2
2 files changed, 4 insertions, 4 deletions
diff --git a/include/cru/platform/Check.h b/include/cru/platform/Check.h
index 1750c7e8..8dc4faac 100644
--- a/include/cru/platform/Check.h
+++ b/include/cru/platform/Check.h
@@ -2,8 +2,8 @@
#include "Exception.h"
#include "Resource.h"
-#include "cru/common/String.h"
#include "cru/common/Format.h"
+#include "cru/common/String.h"
#include <memory>
#include <type_traits>
@@ -12,7 +12,7 @@ namespace cru::platform {
template <typename TTarget>
TTarget* CheckPlatform(IPlatformResource* resource,
const String& target_platform) {
- Expects(resource);
+ if (resource == nullptr) return nullptr;
const auto result = dynamic_cast<TTarget*>(resource);
if (result == nullptr) {
throw UnsupportPlatformException(Format(
@@ -26,9 +26,9 @@ TTarget* CheckPlatform(IPlatformResource* resource,
template <typename TTarget, typename TSource>
std::shared_ptr<TTarget> CheckPlatform(const std::shared_ptr<TSource>& resource,
const String& target_platform) {
+ if (resource == nullptr) return nullptr;
static_assert(std::is_base_of_v<IPlatformResource, TSource>,
"TSource must be a subclass of INativeResource.");
- Expects(resource);
const auto result = std::dynamic_pointer_cast<TTarget>(resource);
if (result == nullptr) {
throw UnsupportPlatformException(Format(
diff --git a/include/cru/ui/render/RenderObject.h b/include/cru/ui/render/RenderObject.h
index bef2859e..311ab044 100644
--- a/include/cru/ui/render/RenderObject.h
+++ b/include/cru/ui/render/RenderObject.h
@@ -50,7 +50,7 @@ class CRU_UI_API RenderObject : public Object {
void SetAttachedControl(controls::Control* new_control);
RenderObject* GetParent() const { return parent_; }
- void SetParent(RenderObject* new_parent) { parent_ = new_parent; }
+ void SetParent(RenderObject* new_parent);
// Offset from parent's lefttop to lefttop of this render object. Margin is
// accounted for.