diff --git a/app/src/main/java/org/omnirom/control/OverlaysProvider.kt b/app/src/main/java/org/omnirom/control/OverlaysProvider.kt
index e94aa53..a4c1c96 100644
--- a/app/src/main/java/org/omnirom/control/OverlaysProvider.kt
+++ b/app/src/main/java/org/omnirom/control/OverlaysProvider.kt
@@ -280,18 +280,18 @@
     }
 
     fun saveIconShapeOverlayToSettings(iconShapePackage: String) {
-        val overlayPackageJson = Settings.Secure.getString(
+        val overlayPackageJson: String? = Settings.Secure.getString(
             context.contentResolver,
             "theme_customization_overlay_packages"
         )
         var json = JSONObject()
-        if (overlayPackageJson.isNotEmpty()) {
+        if (!overlayPackageJson.isNullOrEmpty()) {
             json = JSONTokener(overlayPackageJson).nextValue() as JSONObject
         }
-        if (iconShapePackage.isNotEmpty()) {
-            json.put(getIconShapeCategory(), iconShapePackage)
-        } else {
+        if (iconShapePackage.isNullOrEmpty()) {
             json.remove(getIconShapeCategory())
+        } else {
+            json.put(getIconShapeCategory(), iconShapePackage)
         }
         Settings.Secure.putString(
             context.contentResolver, "theme_customization_overlay_packages",
