diff --git a/src/plugins/imageformats/dds/main.cpp b/src/plugins/imageformats/dds/main.cpp
index 755340704e683d8b86395f146f7ab25ee1b274b3..ef57cc52c573047718151baced98b850716a2ac6 100644
--- a/src/plugins/imageformats/dds/main.cpp
+++ b/src/plugins/imageformats/dds/main.cpp
@@ -50,9 +50,11 @@ QT_BEGIN_NAMESPACE
 
 QImageIOPlugin::Capabilities QDDSPlugin::capabilities(QIODevice *device, const QByteArray &format) const
 {
-    if (!device || !device->isOpen())
+    if (format == QByteArrayLiteral("dds"))
+        return Capabilities(CanRead | CanWrite);
+    if (!format.isEmpty())
         return 0;
-    if (format.toLower() != "dds")
+    if (!device || !device->isOpen())
         return 0;
 
     Capabilities cap;