ddnet/src/game/client
Robert Müller b89e4e8770 Finish CHttpRequest::OnCompletion before updating State()
Ensure that the `CHttpRequest::OnCompletion` function has finished before updating the state which is visible to other threads. Otherwise, threads may try to access the result of a completed HTTP request, before the result has been initialized/updated in the `OnCompletion` function.

Fixes warning due to invalid texture width/height being shown for downloaded skins, because the texture was loaded before the image data was initialized. Closes #7818.

Regression from #7683. Before this, the `OnCompletion` function could also modify the HTTP request's state, which was used to check if loading the skin PNG failed. Instead of doing this, a separate check is added for the skin download task to check that the PNG was loaded successfully.
2024-01-21 14:53:33 +01:00
..
components Finish CHttpRequest::OnCompletion before updating State() 2024-01-21 14:53:33 +01:00
prediction Fix readability-make-member-function-const 2023-12-14 23:38:03 +01:00
animstate.cpp Minor refactoring of CAnimState and tee rendering functions 2023-06-10 13:10:26 +02:00
animstate.h Minor refactoring of CAnimState and tee rendering functions 2023-06-10 13:10:26 +02:00
component.cpp Use curl-multi 2023-12-18 20:06:43 +01:00
component.h Use curl-multi 2023-12-18 20:06:43 +01:00
gameclient.cpp Merge pull request #7683 from Learath2/dd_pr_curlmultifinal 2024-01-15 21:54:24 +00:00
gameclient.h Format and bump fake curl 2023-12-18 23:02:00 +01:00
laser_data.cpp Add flag to ddnetlaser for enabling prediction, let server control starttick 2023-09-19 23:22:15 +02:00
laser_data.h Add flag to ddnetlaser for enabling prediction, let server control starttick 2023-09-19 23:22:15 +02:00
lineinput.cpp Fix various lineinput issues/regressions 2023-12-15 17:49:06 +01:00
lineinput.h Fix readability-make-member-function-const 2023-12-14 23:38:03 +01:00
pickup_data.cpp Add net netobjs for projectile and pickup, extend ddnetlaser, remove EntityEx server-side 2023-05-04 23:43:05 +02:00
pickup_data.h Add net netobjs for projectile and pickup, extend ddnetlaser, remove EntityEx server-side 2023-05-04 23:43:05 +02:00
projectile_data.cpp Add net netobjs for projectile and pickup, extend ddnetlaser, remove EntityEx server-side 2023-05-04 23:43:05 +02:00
projectile_data.h Add net netobjs for projectile and pickup, extend ddnetlaser, remove EntityEx server-side 2023-05-04 23:43:05 +02:00
race.cpp Use std::vector and std::deque instead of most std::lists 2023-07-01 15:44:35 +02:00
race.h Organize game-client includes 2022-05-29 21:24:43 +02:00
render.cpp CRenderTools: Mark some methods static and (some) const 2023-12-26 19:37:21 +03:00
render.h CRenderTools: Mark some methods static and (some) const 2023-12-26 19:37:21 +03:00
render_map.cpp Differentiate between normal and checkpoint teles 2023-12-27 15:23:57 +01:00
skin.h Check for valid favorite skin name, add CSkin::IsValidName 2023-12-22 22:13:33 +01:00
ui.cpp Fix mouse being outside of UI screen on right and bottom edges 2023-12-28 21:23:16 +01:00
ui.h Fix readability-make-member-function-const 2023-12-14 23:38:03 +01:00
ui_listbox.cpp Make listbox scrollbar width and margin adjustable 2023-09-16 13:24:19 +02:00
ui_listbox.h Make listbox scrollbar width and margin adjustable 2023-09-16 13:24:19 +02:00
ui_rect.cpp Add CUIRect::Margin with vec2 argument 2023-10-06 18:08:03 +02:00
ui_rect.h Add CUIRect::Margin with vec2 argument 2023-10-06 18:08:03 +02:00
ui_scrollregion.cpp Small cleanup: simplify member type and computation 2023-11-19 17:36:17 +01:00
ui_scrollregion.h Small cleanup: simplify member type and computation 2023-11-19 17:36:17 +01:00