diff options
-rw-r--r-- | MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.c b/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.c index 3e19fad064..ba7f5a5f77 100644 --- a/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.c +++ b/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.c @@ -3700,6 +3700,8 @@ ScsiDiskAsyncRead10 ( SCSI_ASYNC_RW_REQUEST *Request;
EFI_EVENT AsyncIoEvent;
+ AsyncIoEvent = NULL;
+
Request = AllocateZeroPool (sizeof (SCSI_ASYNC_RW_REQUEST));
if (Request == NULL) {
return EFI_OUT_OF_RESOURCES;
@@ -3755,6 +3757,10 @@ ScsiDiskAsyncRead10 ( return EFI_SUCCESS;
ErrorExit:
+ if (AsyncIoEvent != NULL) {
+ gBS->CloseEvent (AsyncIoEvent);
+ }
+
if (Request != NULL) {
if (Request->SenseData != NULL) {
FreePool (Request->SenseData);
@@ -3803,6 +3809,8 @@ ScsiDiskAsyncWrite10 ( SCSI_ASYNC_RW_REQUEST *Request;
EFI_EVENT AsyncIoEvent;
+ AsyncIoEvent = NULL;
+
Request = AllocateZeroPool (sizeof (SCSI_ASYNC_RW_REQUEST));
if (Request == NULL) {
return EFI_OUT_OF_RESOURCES;
@@ -3858,6 +3866,10 @@ ScsiDiskAsyncWrite10 ( return EFI_SUCCESS;
ErrorExit:
+ if (AsyncIoEvent != NULL) {
+ gBS->CloseEvent (AsyncIoEvent);
+ }
+
if (Request != NULL) {
if (Request->SenseData != NULL) {
FreePool (Request->SenseData);
@@ -3906,6 +3918,8 @@ ScsiDiskAsyncRead16 ( SCSI_ASYNC_RW_REQUEST *Request;
EFI_EVENT AsyncIoEvent;
+ AsyncIoEvent = NULL;
+
Request = AllocateZeroPool (sizeof (SCSI_ASYNC_RW_REQUEST));
if (Request == NULL) {
return EFI_OUT_OF_RESOURCES;
@@ -3961,6 +3975,10 @@ ScsiDiskAsyncRead16 ( return EFI_SUCCESS;
ErrorExit:
+ if (AsyncIoEvent != NULL) {
+ gBS->CloseEvent (AsyncIoEvent);
+ }
+
if (Request != NULL) {
if (Request->SenseData != NULL) {
FreePool (Request->SenseData);
@@ -4009,6 +4027,8 @@ ScsiDiskAsyncWrite16 ( SCSI_ASYNC_RW_REQUEST *Request;
EFI_EVENT AsyncIoEvent;
+ AsyncIoEvent = NULL;
+
Request = AllocateZeroPool (sizeof (SCSI_ASYNC_RW_REQUEST));
if (Request == NULL) {
return EFI_OUT_OF_RESOURCES;
@@ -4064,6 +4084,10 @@ ScsiDiskAsyncWrite16 ( return EFI_SUCCESS;
ErrorExit:
+ if (AsyncIoEvent != NULL) {
+ gBS->CloseEvent (AsyncIoEvent);
+ }
+
if (Request != NULL) {
if (Request->SenseData != NULL) {
FreePool (Request->SenseData);
|