diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp
index 7432c4601f1ce7f5dab58f898a414542cf6b3f2c..59b086c7c2ed286ba2454e2cf48a379abe96c3d7 100644
--- a/src/plugins/debugger/gdb/gdbengine.cpp
+++ b/src/plugins/debugger/gdb/gdbengine.cpp
@@ -3529,7 +3529,7 @@ void GdbEngine::assignValueInDebugger(const QString &expression, const QString &
 {
     postCommand("-var-delete assign");
     postCommand("-var-create assign * " + expression.toLatin1());
-    postCommand("-var-assign assign " + value.toLatin1(),
+    postCommand("-var-assign assign " + GdbMi::escapeCString(value.toLatin1()),
         Discardable, CB(handleVarAssign));
 }