diff --git a/src/gettext.cpp b/src/gettext.cpp
index d4dc719b4e1d19c2a760f6511f9ebb66d8cdf5fa..8000bf828ebd02fe7325173a5241ad20db850975 100644
--- a/src/gettext.cpp
+++ b/src/gettext.cpp
@@ -251,15 +251,17 @@ void init_gettext(const char *path,std::string configured_language) {
 	//errorstream << "Gettext debug: domainname = " << tdomain << "; codeset = "<< codeset << std::endl;
 #endif // defined(_WIN32)
 
+#else
+	/* set current system default locale */
+	setlocale(LC_ALL, "");
+#endif // if USE_GETTEXT
+
 	/* no matter what locale is used we need number format to be "C" */
 	/* to ensure formspec parameters are evaluated correct!          */
 
-
 	setlocale(LC_NUMERIC,"C");
 	infostream << "Message locale is now set to: "
 			<< setlocale(LC_ALL,0) << std::endl;
-			
-#endif // if USE_GETTEXT
 }