summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/blitter/factory.hpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/blitter/factory.hpp b/src/blitter/factory.hpp
index c7776f4a4..c76126fb5 100644
--- a/src/blitter/factory.hpp
+++ b/src/blitter/factory.hpp
@@ -73,6 +73,15 @@ protected:
}
}
+ /**
+ * Is the blitter usable with the current drivers and hardware config?
+ * @return True if the blitter can be instantiated.
+ */
+ virtual bool IsUsable() const
+ {
+ return true;
+ }
+
public:
virtual ~BlitterFactory()
{
@@ -119,7 +128,7 @@ public:
for (; it != GetBlitters().end(); it++) {
BlitterFactory *b = (*it).second;
if (strcasecmp(bname, b->name.c_str()) == 0) {
- return b;
+ return b->IsUsable() ? b : nullptr;
}
}
return nullptr;