Fixed one bug in consplitter console input Start/Stop functions for those handlers only produce SimpleTextIn and not produce SimpleTextEx protocol.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5914 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@ -12,11 +12,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|||||||
|
|
||||||
**/
|
**/
|
||||||
|
|
||||||
//
|
|
||||||
// Include common header file for this module.
|
|
||||||
//
|
|
||||||
|
|
||||||
|
|
||||||
#include <ConPlatform.h>
|
#include <ConPlatform.h>
|
||||||
|
|
||||||
//
|
//
|
||||||
|
@ -1094,15 +1094,14 @@ ConSplitterConInDriverBindingStart (
|
|||||||
mConIn.VirtualHandle,
|
mConIn.VirtualHandle,
|
||||||
EFI_OPEN_PROTOCOL_GET_PROTOCOL
|
EFI_OPEN_PROTOCOL_GET_PROTOCOL
|
||||||
);
|
);
|
||||||
if (EFI_ERROR (Status)) {
|
if (!EFI_ERROR (Status)) {
|
||||||
return Status;
|
//
|
||||||
|
// If Simple Text Input Ex protocol exists,
|
||||||
|
// add this device into Text In Ex devices list.
|
||||||
|
//
|
||||||
|
Status = ConSplitterTextInExAddDevice (&mConIn, TextInEx);
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
|
||||||
// Add this device into Text In Ex devices list.
|
|
||||||
//
|
|
||||||
Status = ConSplitterTextInExAddDevice (&mConIn, TextInEx);
|
|
||||||
|
|
||||||
return Status;
|
return Status;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1455,10 +1454,10 @@ ConSplitterConInDriverBindingStop (
|
|||||||
IN EFI_HANDLE *ChildHandleBuffer
|
IN EFI_HANDLE *ChildHandleBuffer
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
EFI_SIMPLE_TEXT_INPUT_PROTOCOL *TextIn;
|
EFI_SIMPLE_TEXT_INPUT_PROTOCOL *TextIn;
|
||||||
|
|
||||||
EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *TextInEx;
|
EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *TextInEx;
|
||||||
|
|
||||||
if (NumberOfChildren == 0) {
|
if (NumberOfChildren == 0) {
|
||||||
return EFI_SUCCESS;
|
return EFI_SUCCESS;
|
||||||
}
|
}
|
||||||
@ -1471,19 +1470,17 @@ ConSplitterConInDriverBindingStop (
|
|||||||
ControllerHandle,
|
ControllerHandle,
|
||||||
EFI_OPEN_PROTOCOL_GET_PROTOCOL
|
EFI_OPEN_PROTOCOL_GET_PROTOCOL
|
||||||
);
|
);
|
||||||
if (EFI_ERROR (Status)) {
|
if (!EFI_ERROR (Status)) {
|
||||||
return Status;
|
//
|
||||||
|
// If Simple Text Input Ex protocol exists,
|
||||||
|
// remove device from Text Input Ex devices list.
|
||||||
|
//
|
||||||
|
Status = ConSplitterTextInExDeleteDevice (&mConIn, TextInEx);
|
||||||
|
if (EFI_ERROR (Status)) {
|
||||||
|
return Status;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
|
||||||
// Remove device from Text Input Ex devices list.
|
|
||||||
//
|
|
||||||
Status = ConSplitterTextInExDeleteDevice (&mConIn, TextInEx);
|
|
||||||
if (EFI_ERROR (Status)) {
|
|
||||||
return Status;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Close Simple Text In protocol on controller handle and virtual handle.
|
// Close Simple Text In protocol on controller handle and virtual handle.
|
||||||
//
|
//
|
||||||
|
Reference in New Issue
Block a user