It wasn't a bug, but it can be improved.  Here's an example:

Imagine we have 2 classes, and the log-likelihoods for some sample X are -600 and -1600. The min is -1600, and subtracting it yields:

-600 - (-1600) = 1000
-1600 - (-1600) = 0 

np.exp(1000), problematically, is inf. 

However, using np.max instead of np.min you get:

-600 - (-600) = 0
-1600 - (-600) = -1000

and then np.exp will be 1 and 0 respectively - which is what we expect.  In other words, we are more interested in getting the larger likelihoods correct, and not ad worried about likelihoods that are much smaller than the max.