Sent from my iPhone
> On Sep 22, 2014, at 5:44 PM, J. E. <[email protected]> wrote:
>
>
> I agree the code looks fine in the source, the code matches my UDK 2014, but
> it doesn't work in the EFI Shell 1.0 during runtime.
> I am currently installing the latest snapshot of EDKII/UDK, I will test it
> with fresh code just in case something funny happened in my UDK folder or a
> recent patch fixed the problem, but I think it will do the same thing since I
> have not modified the UDK library in any way.
>
> I'll post back once I figure out how to build the missing Win32 base tools
> without build.exe :p (I'll figure it out..)
>
Base tools build from running nmake in the BaseTools dir.
> From: [email protected]
> Date: Mon, 22 Sep 2014 16:05:23 -0700
> To: [email protected]
> Subject: Re: [edk2] ShellExecute crashing in NT emulator - [Bug Found]
>
>
> On Sep 22, 2014, at 3:09 PM, J. E. <[email protected]> wrote:
>
> Hi
>
> I am not accessing it from my app, i am fixing a bug in udk2014.
>
>
> It is hard to tell from your mail as you keep showing code fragments, and not
> a diff or code fragment plus what file it came from.
>
>
> My app is only calling ShellExecute.
>
> Try it yourself in helloworld, im sure if you call shellexecute in an efi
> shell 1.0 it will crash
>
>
> If we look at the EfiShellEnvironment2 protocol definition we see:
>
> https://svn.code.sf.net/p/edk2/code/trunk/edk2/ShellPkg/Include/Protocol/EfiShellEnvironment2.h
> typedef
> EFI_STATUS
> (EFIAPI *SHELLENV_EXECUTE) (
> IN EFI_HANDLE *ParentImageHandle,
> IN CHAR16 *CommandLine,
> IN BOOLEAN DebugOutput
> );
>
> And that would imply that ShellExecute() should be calling with ParentHandle
> and not *ParentHandle in UefiShellLib.c
>
> https://svn.code.sf.net/p/edk2/code/trunk/edk2/ShellPkg/Library/UefiShellLib/UefiShellLib.c
> EFI_STATUS
> EFIAPI
> ShellExecute (
> IN EFI_HANDLE *ParentHandle,
> IN CHAR16 *CommandLine OPTIONAL,
> IN BOOLEAN Output OPTIONAL,
> IN CHAR16 **EnvironmentVariables OPTIONAL,
> OUT EFI_STATUS *Status OPTIONAL
> )
> {
> EFI_STATUS CmdStatus;
> //
> // Check for UEFI Shell 2.0 protocols
> //
> if (gEfiShellProtocol != NULL) {
> //
> // Call UEFI Shell 2.0 version (not using Output parameter)
> //
> return (gEfiShellProtocol->Execute(ParentHandle,
> CommandLine,
> EnvironmentVariables,
> Status));
> }
>
> //
> // Check for EFI shell
> //
> if (mEfiShellEnvironment2 != NULL) {
> //
> // Call EFI Shell version.
> // Due to oddity in the EFI shell we want to dereference the ParentHandle
> here
> //
> CmdStatus = (mEfiShellEnvironment2->Execute(*ParentHandle,
> CommandLine,
> Output));
> //
>
> Thanks,
>
> Andrew Fish
>
>
> ------------------------------------------------------------------------------
> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer Achieve PCI
> DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports Are you
> Audit-Ready for PCI DSS 3.0 Compliance? Download White paper Comply to PCI
> DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
> http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
> _______________________________________________ edk2-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/edk2-devel
> ------------------------------------------------------------------------------
> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
> http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
> _______________________________________________
> edk2-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/edk2-devel
------------------------------------------------------------------------------
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-devel