浏览代码

* patch by Bart B: Fix for TryStrToConvUnit in ConvUtils unit, resolves #39797

florian 3 年之前
父节点
当前提交
160c5a3d39
共有 1 个文件被更改,包括 7 次插入2 次删除
  1. 7 2
      packages/rtl-objpas/src/inc/convutil.inc

+ 7 - 2
packages/rtl-objpas/src/inc/convutil.inc

@@ -397,8 +397,13 @@ begin
   ValueStr:=Copy(AText,1,P);
   if not TryStrToFloat(ValueStr, AValue) then
     Exit;
-  while AText[P]=#32 do Inc(P);
-  TypeStr:=Copy(AText,P,MaxInt);
+  //since there is no restriction on the description of a TConvType
+  //(it can be empty or have leading or trailing spaces)
+  //everything after the space at position P _must_ be the description
+  if P=Length(AText) then
+    TypeStr:=''
+  else
+    TypeStr:=Copy(AText,P+1,MaxInt);
   Result:=DescriptionToConvType(TypeStr, AType);
 end;