Fix NPE

Change-Id: I6e56b4b93b43f156872c2197e96df0afe26acb87
diff --git a/app/src/main/kotlin/de/ids_mannheim/korapxmltools/KorapXmlTool.kt b/app/src/main/kotlin/de/ids_mannheim/korapxmltools/KorapXmlTool.kt
index 65e83cc..e4b3d3e 100644
--- a/app/src/main/kotlin/de/ids_mannheim/korapxmltools/KorapXmlTool.kt
+++ b/app/src/main/kotlin/de/ids_mannheim/korapxmltools/KorapXmlTool.kt
@@ -2786,18 +2786,23 @@
         }
 
         synchronized(textData) {
-            if (texts[docId] != null) {
-                textData.textContent = texts[docId]!!.toString()
+            // Capture values locally to avoid TOCTOU race conditions
+            val text = texts[docId]
+            if (text != null) {
+                textData.textContent = text.toString()
             }
-            if (tokens[docId] != null) {
-                textData.tokens = tokens[docId]
+            val tokenArray = tokens[docId]
+            if (tokenArray != null) {
+                textData.tokens = tokenArray
             }
-            if (sentences[docId] != null) {
-                textData.sentences = sentences[docId]
+            val sentenceArray = sentences[docId]
+            if (sentenceArray != null) {
+                textData.sentences = sentenceArray
             }
             // Collect metadata
-            if (metadata[docId] != null) {
-                metadata[docId]!!.forEachIndexed { index, value ->
+            val metadataArray = metadata[docId]
+            if (metadataArray != null) {
+                metadataArray.forEachIndexed { index, value ->
                     textData.headerMetadata["field_$index"] = value
                 }
             }