A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/dotnet/corefx/issues/35176 below:

BigInteger.TryParse out-of-bounds access · Issue #28652 · dotnet/runtime · GitHub

BigInteger.TryParse overloads accepting ReadOnlySpan<char> are ignoring the length of the span, and are reading beyond its end if there are more digits available. Here's the program to reproduce this:

using System;
using System.Numerics;

namespace BigInt
{
  public class Program
  {
    public static void Main(string[] args)
    {
      var s = "123456789";
      var span = s.AsSpan(0, 1);

      if (BigInteger.TryParse(span, out var result))
      {
        Console.WriteLine(result);
      }
    }
  }
}

This program should be printing 1, but it's printing 123456789 instead. My running environment looks like this:

.NET Core SDK (reflecting any global.json):
 Version:   2.2.103
 Commit:    8edbc2570a

Runtime Environment:
 OS Name:     Mac OS X
 OS Version:  10.14
 OS Platform: Darwin
 RID:         osx.10.14-x64
 Base Path:   /usr/local/share/dotnet/sdk/2.2.103/

Found via SharpFuzz.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4