tmp_s.ToUpper() throws a NullReferenceException


Evolve.cs Line 441 "else if (V_SEED_TIME.ToUpper().Equals(tmp_s.ToUpper()) || (tmp_s == null && auto))"
You have to flip the conditions of the "or" because when "tmp_s" is null it crashes with a NullReferenceException when trying to call ToUpper() of null,


bstabile wrote Oct 9, 2012 at 12:12 AM


Thanks for reporting this bug.

In "Alpha3" (under construction), many changes will be included, both to the original source ECJ repository code, and to this converted C# fork.

Now there is a "Null Guard" that throws an exception right away if the seed isn't set in the default parameters (or overridden in later params specifications, or set automatically). In other words, if the framework hasn't initialized this somewhere, it causes an "intentional" exception.

Alpha 3 is in the works, but I don't want to release anything to fix small conversion anomalies such as this. Rest assured, there are much bigger things to deal with as the fork takes on extensive .NET reconstruction, to exploit platform specific features.

Again, let me thank you for spotting the bug, but you'll be happy, I hope, to know that much bigger fish are being fried behind the scenes.



wrote Feb 14, 2013 at 12:54 AM