Fix ServerPing NPE w/ String favicons
Currently, passing a null favicon String to the ServerPing(Protocol, Players, String, String) constructor causes a NPE. However, passing a null `Favicon` object to the corresponding constructor does not cause one. Setting the favicon String using the setFavicon(String) method doesn't cause a NPE either. Therefore, the NPE thrown by the constructor is inconsistent and should be avoided. Please find a sample NPE here: http://newpaste.md-5.net/pmtqjc8vl (Note the `null` favicon) This PR changes the documented (unintended?) behaviour by adding a null check before passing the favicon String to the alternative `Favicon` object constructor. This makes the constructor consistent with the other one and the `setFavicon(String)` method. This also adds compatibility for old (made before Favicon API) plugins passing `null` favicon Strings (and expecting no favicon to be displayed instead of a NPE). Thanks!
This commit is contained in:
parent
f23691df23
commit
107d6b011d
@ -77,7 +77,7 @@ public class ServerPing
|
|||||||
@Deprecated
|
@Deprecated
|
||||||
public ServerPing(Protocol version, Players players, String description, String favicon)
|
public ServerPing(Protocol version, Players players, String description, String favicon)
|
||||||
{
|
{
|
||||||
this( version, players, description, Favicon.create( favicon ) );
|
this( version, players, description, favicon == null ? null : Favicon.create( favicon ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
@Deprecated
|
@Deprecated
|
||||||
|
Loading…
Reference in New Issue
Block a user