Fixed potential NPE from Cursor.getCapabilities()

This commit is contained in:
Elias Naur 2006-10-27 06:27:58 +00:00
parent d4d39bf869
commit d396992cc5
3 changed files with 8 additions and 3 deletions

View File

@ -141,7 +141,10 @@ public class Cursor {
* @return A bit mask with native cursor capabilities.
*/
public static int getCapabilities() {
return Mouse.getImplementation().getNativeCursorCapabilities();
if (Mouse.getImplementation() != null)
return Mouse.getImplementation().getNativeCursorCapabilities();
else
return Mouse.createImplementation().getNativeCursorCapabilities();
}
/**

View File

@ -307,6 +307,8 @@ public class Keyboard {
* @throws LWJGLException if the keyboard could not be created for any reason
*/
public static void create() throws LWJGLException {
if (!Display.isCreated()) throw new IllegalStateException("Display must be created.");
create(Mouse.createImplementation());
}

View File

@ -225,8 +225,6 @@ public class Mouse {
}
static InputImplementation createImplementation() {
if (!Display.isCreated()) throw new IllegalStateException("Display must be created.");
/* Use reflection since we can't make Display.getImplementation
* public
*/
@ -278,6 +276,8 @@ public class Mouse {
* @throws LWJGLException if the mouse could not be created for any reason
*/
public static void create() throws LWJGLException {
if (!Display.isCreated()) throw new IllegalStateException("Display must be created.");
create(createImplementation());
}