bitwizeshift / bitwizeshift/Alloy

`win32_filesystem_monitor` pumps 1 event per handle on `pump` calls

Open
#1 0 comments 0 reactions 0 assignees View on GitHub
Complexity: Low Good First Issue Priority: Low Status: Available Type: Bug Report
Dominant language
C++
Stars
12
Forks
0
PR merge metrics
No merged PRs in 30d

Description

### Checklist

- [x] I did not find a duplicate of this bug in the Github Issues section.

----------

### Description

In `extras/win32-bindings`, the `win32_filesystem_monitor` only pumps a single event per watched handle during an invocation of `pump`, rather than pumping _all_ events at once.

This may be a larger issue for system that would like to watch larger amounts of files at once, since I/O events are typically polled once per update cycle and/or frame.

### Steps to reproduce

1. Create a `win32_filesystem_monitor`
2. Register the monitor to a `message_pump`
3. Register a listener to the `message_pump`
4. `watch` a directory
5. Trigger several filesystem actions
6. Invoke `message_pump::pump`

#### Expected Behavior

All events fire

#### Actual Behavior

A single event per watched directory fires per `pump` invocation

### Extra information

* Operating System: **Windows 10**
* Compiler: **clang-8.0**

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.