From 74adbbcc5d392431f29c956cf65dfc0c7fa19337 Mon Sep 17 00:00:00 2001 From: jean-pierre charras Date: Sat, 8 Aug 2020 15:18:50 +0200 Subject: [PATCH] Ensure values with units are displayed correctly when numbers are very small. from master branch. see https://gitlab.com/kicad/code/kicad/issues/5074 --- eeschema/sim/spice_value.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/eeschema/sim/spice_value.cpp b/eeschema/sim/spice_value.cpp index d31eb7e115..0355bea984 100644 --- a/eeschema/sim/spice_value.cpp +++ b/eeschema/sim/spice_value.cpp @@ -90,12 +90,18 @@ void SPICE_VALUE::Normalize() { m_base *= 0.001; m_prefix = (UNIT_PREFIX)( m_prefix + 3 ); + + if( m_prefix == PFX_TERA ) // this is the biggest unit available + break; } while( m_base != 0.0 && std::fabs( m_base ) < 1.000 ) { m_base *= 1000.0; m_prefix = (UNIT_PREFIX)( m_prefix - 3 ); + + if( m_prefix == PFX_FEMTO ) // this is the smallest unit available + break; } }