diff --git a/dlls/winex11.drv/ime.c b/dlls/winex11.drv/ime.c
index ab94864f41df243962a76cc50cafeba116881cf6..b934035a3c04f9db6fb21b16e1858f35a0ca9cef 100644
--- a/dlls/winex11.drv/ime.c
+++ b/dlls/winex11.drv/ime.c
@@ -207,6 +207,12 @@ static HIMCC updateCompStr(HIMCC old, LPWSTR compstr, DWORD len)
     if (old == NULL && compstr == NULL && len == 0)
         return NULL;
 
+    if (compstr == NULL && len != 0)
+    {
+        ERR("compstr is NULL however we have a len!  Please report\n");
+        len = 0;
+    }
+
     if (old != NULL)
     {
         olddata = ImmLockIMCC(old);
@@ -343,6 +349,12 @@ static HIMCC updateResultStr(HIMCC old, LPWSTR resultstr, DWORD len)
     if (old == NULL && resultstr == NULL && len == 0)
         return NULL;
 
+    if (resultstr == NULL && len != 0)
+    {
+        ERR("resultstr is NULL however we have a len!  Please report\n");
+        len = 0;
+    }
+
     if (old != NULL)
     {
         olddata = ImmLockIMCC(old);