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

        Issue Links

          Activity

            People

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

              Dates

                Created:
                Updated:
                Resolved: