Uploaded image for project: 'Core ReactOS'
  1. Core ReactOS
  2. CORE-17433

Regression, D3DKMTCreateDCFromMemory() not found when replacing gdi32.dll with the version from 2k3sp2

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Major
    • 0.4.15
    • None

    Description

      Happening since CORE-11331 got committed, iirc it was around 0.4.6-dev'ing.

      If we replace gdi32.dll with the 2k3sp2 version, like described here and then start Diablo2demo from rapps:
      the game does not longer run, because our D3D does now depend on D3DKMTCreateDCFromMemory() which is not present in the 2k3sp2 gdi32.dll, but is now required by our D3D.

      Can we link that function statically into our D3D? or introduce something like a dynamic gdi32_vista?

      Reproduction steps

      Regression test
      r75060_ok.webm
      r75060_ok.log
      r75061_d3dkmtCreateDCFromMemoryCouldNotBeLocatedInGDI32.png
      r75061_affected_and_guilty.webm
      r75061_affected_and_guilty_failedToSnap_D3DKMTCreateDCFromMemory_inGDI32dll.log

      For the record:
      SVNr75059 introduced D3DKMT*
      SVNr75061 is the guilty rev, because that revision started to depend on it!

      We either have to find a way to live in D3D without that function, or we have to move it out of gdi32.dll into some dynamic lib like gdi32_vista.dll, or we have to link it statically into our D3D.

      Attachments

        1. r75061_PR4103patched_CORE-11717patched_unfrankensteined_DxDiagIsBlackOnlyAndHangs.webm
          891 kB
        2. r75061_PR4103patched_CORE-11717patched_unfrankensteined_DxDiagIsBlackOnlyAndHangs.log
          22 kB
        3. r75061_PR4103patched_CORE-11717patched_unfrankensteined_DiabloIIHangsAlso.webm
          24 kB
        4. r75061_PR4103patched_CORE-11717patched_unfrankensteined_DiabloIIHangsAlso.log
          30 kB
        5. r75061_PR4103patched_CORE-11717patched_frankensteined_DxDiagCrashes_DiabloIIHangsAlso.webm
          961 kB
        6. r75061_PR4103patched_CORE-11717patched_frankensteined_DxDiagCrashes_DiabloIIHangsAlso.log
          65 kB
        7. r75061_d3dkmtCreateDCFromMemoryCouldNotBeLocatedInGDI32.png
          r75061_d3dkmtCreateDCFromMemoryCouldNotBeLocatedInGDI32.png
          37 kB
        8. r75061_affected_and_guilty.webm
          2.35 MB
        9. r75061_affected_and_guilty_failedToSnap_D3DKMTCreateDCFromMemory_inGDI32dll.log
          240 kB
        10. r75060_ok.webm
          4.41 MB
        11. r75060_ok.log
          288 kB
        12. r75060_CORE-11717patched_nonFrankenSteined_DxDiagWorks.webm
          2.01 MB
        13. r75060_CORE-11717patched_nonFrankenSteined_DxDiagWorks.log
          164 kB
        14. r75060_CORE-11717patched_nonFrankenSteined_DiabloIIWorks.webm
          1.83 MB
        15. r75060_CORE-11717patched_nonFrankenSteined_DiabloIIWorks.log
          447 kB
        16. r75060_CORE-11717patched_FrankenSteined_DxDiagWorks.webm
          1.28 MB
        17. r75060_CORE-11717patched_FrankenSteined_DxDiagWorks.log
          77 kB
        18. r75060_CORE-11717patched_FrankenSteined_DiabloIIWorks.webm
          1.93 MB
        19. r75060_CORE-11717patched_FrankenSteined_DiabloIIWorks.log
          537 kB
        20. 0.4.7-release-95-g61f3a30_PR4103patched_and_frankensteined_dxdiag_and_diablo2demo.webm
          1.06 MB
        21. 0.4.14-RC-121-g5917fa5_PR4103patched_nonFrankensteined_DxDiagWorks_DbgChannels.webm
          1.37 MB
        22. 0.4.14-RC-121-g5917fa5_PR4103patched_nonFrankensteined_DxDiagWorks_DbgChannels.log
          170 kB
        23. 0.4.14-RC-121-g5917fa5_PR4103patched_nonFrankensteined_DiabloIIWorks_DbgChannels.webm
          2.67 MB
        24. 0.4.14-RC-121-g5917fa5_PR4103patched_nonFrankensteined_DiabloIIWorks_DbgChannels.log
          1.19 MB
        25. 0.4.14-RC-121-g5917fa5_PR4103patched_Frankensteined_DxDiagCrashes_DbgChannels.webm
          1.02 MB
        26. 0.4.14-RC-121-g5917fa5_PR4103patched_Frankensteined_DxDiagCrashes_DbgChannels.log
          44 kB
        27. 0.4.14-RC-121-g5917fa5_PR4103patched_Frankensteined_DiabloIIhangs_DbgChannels.webm
          1.03 MB
        28. 0.4.14-RC-121-g5917fa5_PR4103patched_Frankensteined_DiabloIIhangs_DbgChannels.log
          65 kB
        29. 0.4.14-RC-118-gfef1907_PR4103_frankensteined_DXDIAG.webm
          2.39 MB
        30. 0.4.14-RC-118-gfef1907_PR4103_frankensteined_DXDIAG.logfrankensteined_Diablo2Demo_Hangs.webm
          571 kB
        31. 0.4.14-RC-118-gfef1907_PR4103_frankensteined_DXDIAG.logfrankensteined_Diablo2Demo_Hangs.log
          36 kB
        32. 0.4.14-RC-118-gfef1907_PR4103_frankensteined_DXDIAG.log
          41 kB

        Issue Links

          Activity

            People

              ThFabba ThFabba
              reactosfanboy reactosfanboy
              Votes:
              4 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: