| 
					
				 | 
			
			
				@@ -237,13 +237,14 @@ const 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   Units: array [0 .. 6] of Char = ('b', 'k', 'm', 'g', 't', 'p', 'e');
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   I: Integer;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  LUnit: Char;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 begin
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   Result := 1;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  LUnit := LowerCase(AUnit);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   for I := Low(Units) to High(Units) do begin
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if (I > 0) then
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       Result := Result * 1024;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    if AUnit = Units[I] then
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if LUnit = Units[I] then
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       Exit;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   end;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -278,13 +279,16 @@ begin 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   p := PChar(ASize);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   while p^ <> #0 do
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     case p^ of
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      'b', 'k', 'm', 'g', 't', 'p', 'e':
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      'b', 'k', 'm', 'g', 't', 'p', 'e',
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      'B', 'K', 'M', 'G', 'T', 'P', 'E':
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         begin
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if s = '' then
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            Exit;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           if c <> #0 then
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             Exit;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           c := p^;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           Inc(p);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          if p^ = 'b' then
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (p^ = 'b') or (p^ = 'B') then
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             Inc(p);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         end;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       '0' .. '9':
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -306,7 +310,8 @@ begin 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       Exit;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     end;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  Result := StrToUInt64Def(s, Result) * SizeUnitToInt(c);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  if s <> '' then
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    Result := StrToUInt64Def(s, Result) * SizeUnitToInt(c);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 end;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 end.
 
			 |