microsoft / microsoft/win32metadata

DirectDraw functions have meaningless parameter names

Open
#2,083 7 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
1.5k
Forks
149
Avg merge
5d 16h
Merged PRs (30d)
4

Description

I was told this is the correct place for the issue reported in https://github.com/microsoft/windows-rs/issues/3592#issuecomment-2847349587

For some reason the legacy DirectDraw interface functions have had their function parameter names changed to meaningless names.

For example, in Rust the IDirectDraw::SetCooperativeLevel() function has the following definition:
pub unsafe fn SetCooperativeLevel(&self, param0: super::super::Foundation::HWND, param1: u32) -> windows_core::Result<()>

In the DirectX SDK the function definition is:
HRESULT SetCooperativeLevel(HWND hWnd, DWORD dwFlags)

The Rust parameters are called param0 and param1 instead of hWnd and dwFlags.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing how the DirectDraw metadata for IDirectDraw::SetCooperativeLevel is generated and compare its Rust signature with the DirectX SDK declaration. Check the affected legacy DirectDraw functions, and consider the work complete when generated parameter names such as hWnd and dwFlags replace meaningless names like param0 and param1.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, rust
Domain
operating-systems, tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.