]> git.proxmox.com Git - mirror_edk2.git/commit
This checkin addresses the compatibility issue of passing arguments of type VA_LIST...
authormdkinney <mdkinney@6f19259b-4bc3-4df7-8a09-765794883524>
Sat, 30 May 2009 23:49:35 +0000 (23:49 +0000)
committermdkinney <mdkinney@6f19259b-4bc3-4df7-8a09-765794883524>
Sat, 30 May 2009 23:49:35 +0000 (23:49 +0000)
commit504dcb0a4e04dd76db230cc55c4f95f7a911d127
treea69b849656d6d5ef1ba907c423f735af562f5ed7
parent2075236eefe532097caa04aa2606e2b7cda4e420
This checkin addresses the compatibility issue of passing arguments of type VA_LIST between components.  The type VA_LIST is mapped onto the compiler specific implementation of varargs.  As a result, modules build with different compilers may not use the same VA_LIST structure.  The solution to this issue is to define a new type called BASE_LIST that is a compiler independent method of passing varargs between modules.

1) Update the Print2 Protocol to only use arguments of type BASE_LIST.  Since this is a change to the protocol definition, the GUID has also been updated.
2) Update the implementation of DxePrintLibPrint2Protocol for the update definition of the Print2 Protocol.  Since the PrintLib does contain APIs that use VA_LIST, this library must convert arguments of type VA_LIST to arguments of type BASE_LIST prior to calling the Print2 Protocol services.
3) Update the implementation of PrintDxe to match the updated Print2 Prootocol

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8405 6f19259b-4bc3-4df7-8a09-765794883524
MdeModulePkg/Include/Protocol/Print2.h
MdeModulePkg/Library/DxePrintLibPrint2Protocol/DxePrintLibPrint2Protocol.inf
MdeModulePkg/Library/DxePrintLibPrint2Protocol/PrintLib.c
MdeModulePkg/MdeModulePkg.dec
MdeModulePkg/Universal/PrintDxe/Print.c