GetAppLocalTempDirectory leaks a RoInitialize call
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 68/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- cpp
- Lĩnh vực
- operating-systems
Hướng nghiên cứu
Bắt đầu trong lib/utils/utils.cpp tại Microsoft::Applications::Events::GetAppLocalTempDirectory và kiểm tra lệnh gọi RoInitialize cùng luồng điều khiển xung quanh nó. Đọc hướng dẫn RoInitialize được liên kết, sau đó xác minh rằng việc khởi tạo thành công được cân bằng đúng cách và Application Verifier không còn báo cáo AVRF_STOP_THREADPOOL_DIRTY_COM_STATE.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
In Microsoft::Applications::Events::GetAppLocalTempDirectory (lib/utils/utils.cpp), we have this block of code:
auto hr = RoInitialize(RO_INIT_MULTITHREADED) /* Ignoring result from call toRoInitialize as either initialzation is successful, or else already * initialized and it should be ok to proceed in both the scenarios */ UNREFERENCED_PARAMETER(hr);
If you call RoInitialize without a matching call to RoUninitialize, you leak the com initialization on this thread. See the guidance at https://learn.microsoft.com/en-us/windows/win32/api/roapi/nf-roapi-roinitialize:
Each successful call to RoInitialize, including those that return S_FALSE, must be balanced by a corresponding call to RoUninitialize.
This is caught by Application Verifier as AVRF_STOP_THREADPOOL_DIRTY_COM_STATE.
- Ngôn ngữ chính
- C
- Star
- 102
- Fork
- 66
- Merge trung bình
- 3 ngày 10 giờ
- Pull request đã merge (30 ngày)
- 10
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của microsoft/cpp_client_telemetry
-
C API enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 35/100
microsoft/cpp_client_telemetry#1504 ·
-
bug
microsoft/cpp_client_telemetry#1437 · 1 người được giao ·
-
Dropping of telemetry events Đang mởbug
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 25/100
microsoft/cpp_client_telemetry#1413 · 2 bình luận ·
-
bug
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
microsoft/cpp_client_telemetry#1391 ·
Tất cả issue của microsoft/cpp_client_telemetry
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
BasedHardware/omi#15662 · 1 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
-
level/task module/gcp type/bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
-
Build failure with newer clang Đang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 86/100
hapostgres/pg_auto_failover#1190 ·