浏览代码

Fix SDL pad reconnect after disconnect event error (#1177)

Yuxiao Mao 1 年之前
父节点
当前提交
6dd9d9a0e3
共有 1 个文件被更改,包括 2 次插入9 次删除
  1. 2 9
      hxd/Pad.hx

+ 2 - 9
hxd/Pad.hx

@@ -514,7 +514,7 @@ class Pad {
 		if( @:privateAccess sp.ptr == null )
 			return;
 		var p = new hxd.Pad();
-		p.index = index;
+		p.index = sp.id;
 		p.d = sp;
 		pads.set( p.index, p );
 		for( axis in 0...6 )
@@ -528,15 +528,8 @@ class Pad {
 		var p = pads.get( e.controller );
 		switch( e.type ){
 			case GControllerAdded:
-				if( initDone ){
-					if( p != null ){
-						pads.remove( p.index );
-						p.d.close();
-						p.connected = false;
-						p.onDisconnect();
-					}
+				if( initDone )
 					initPad(e.controller);
-				}
 			case GControllerRemoved:
 				if( p != null ){
 					pads.remove( p.index );