From bdf2c94bffbbfdd9432186ce32efed81f21e744a Mon Sep 17 00:00:00 2001
From: Scott Lahteine <sourcetree@thinkyhead.com>
Date: Mon, 8 Dec 2014 01:43:44 -0800
Subject: [PATCH] Least stack-usage self-contained ftostr32np()

This is the optimal code for a self-contained formatter, although the
original code is crafty in being smaller and simpler, and can be
evaluated as using the original output as a scratch pad for state,
making the final formatter more straightforward. While this code is
longer, all code-paths are minimal.
---
 Marlin/ultralcd.cpp | 16 +---------------
 1 file changed, 1 insertion(+), 15 deletions(-)

diff --git a/Marlin/ultralcd.cpp b/Marlin/ultralcd.cpp
index c148641a39..84eaca59e2 100644
--- a/Marlin/ultralcd.cpp
+++ b/Marlin/ultralcd.cpp
@@ -1445,7 +1445,6 @@ char *ftostr12ns(const float &x)
 
 //  convert float to space-padded string with -_23.4_ format
 char *ftostr32np(const float &x) {
-<<<<<<< HEAD
   long xx = abs(x * 100);
   uint8_t dig;
 
@@ -1472,8 +1471,7 @@ char *ftostr32np(const float &x) {
   dig = xx % 10;
   if (dig) { // 2 decimal places
     conv[5] = '0' + dig;
-    dig = (xx / 10) % 10;
-    conv[4] = '0' + dig;
+    conv[4] = '0' + (xx / 10) % 10;
     conv[3] = '.';
   }
   else { // 1 or 0 decimal place
@@ -1489,18 +1487,6 @@ char *ftostr32np(const float &x) {
   }
   conv[6] = '\0';
   return conv;
-=======
-  char *c = ftostr32(x);
-  if (c[0] == '0' || c[0] == '-') {
-    if (c[0] == '0') c[0] = ' ';
-    if (c[1] == '0') c[1] = ' ';
-  }
-  if (c[5] == '0') {
-    c[5] = ' ';
-    if (c[4] == '0') c[4] = c[3] = ' ';
-  }
-  return c;
->>>>>>> Patch to make Z look more like X and Y on UltraLCD
 }
 
 char *itostr31(const int &xx)
-- 
GitLab