I assume you understood why this change is made. But the others may seek why,
When we want to digitalRead something it should be in () brackets. We may define a variable to point a pin, or it could be directly pin's number. In this case OP wants to read state of pin 39 which is declared as RstPin.
When you try to digitalRead it only accepts pin's numbers which is always a number of pin.
"digitalRead(RstPin == LOW)"
as you can see we trying to read "RstPin == LOW" pin which makes no sense. We must point a pin number
So digitalRead(RstPin) is what we want, we declared RstPin as 39 so compiler knows RstPin means 39.
"digitalRead(RstPin == LOW)" will in fact always read pin0 (whatever that maps to). The reason is that LOW is (currently) defined as 0 and Rst is equal 2 at the time of comparison. So obviously "RstPin==LOW" evaluates to FALSE, which is numerically zero in C.
Hence the program will always attempt to read pin0 in that program.