Commit graph

7383 commits

Author SHA1 Message Date
Lioncash 25038aeb0d telemetry_json: Use the PImpl idiom to avoid unnecessary dependency exposure
Users of the web_service library shouldn't need to care about an
external library like json.h. However, given it's exposed in our
interface, this requires that other libraries publicly link in the JSON
library. We can do better.

By using the PImpl idiom, we can hide this dependency in the cpp file
and remove the need to link that library in altogether.
2018-10-23 15:35:17 +02:00
Lioncash 131ce59800 telemetry_json: Add missing override specifier to the destructor of TelemetryJson 2018-10-23 15:33:41 +02:00
Lioncash 8747d93f6a telemetry_json: Take std::string parameters by value
Taking them by const reference isn't advisable here, because it means
the std::move calls were doing nothing and we were always copying the
std::string instances.
2018-10-23 15:33:34 +02:00
Lioncash c9013c481a telemetry_json: Remove unnecessary includes
Removes unused includes. Also rectifies a missing <chrono> include.
2018-10-23 15:33:18 +02:00
Lioncash 7142d3cf78 telemetry_session: Remove doxygen comment for a non-existent parameter
There's no "func" parameter, so this can just be removed.
2018-10-23 15:30:07 +02:00
Lioncash 61627c2042 telemetry_session: Add missing includes
Prevents potential compilation issues in the future by including missing
headers for certain functions and types.
2018-10-23 15:28:50 +02:00
Lioncash d5bb2a21aa telemetry_session: Remove unimplemented FinalizeAsyncJob prototype
This isn't implemented anywhere, so it can just be removed.
2018-10-23 15:27:05 +02:00
Weiyi Wang eb285c33fd kernel: make handle table per-process 2018-10-22 21:32:34 -04:00
Weiyi Wang fda2a5cf54 kernel/thread: use std::unordered_map for callback record 2018-10-22 21:32:34 -04:00
Weiyi Wang 5b45a3e1b5 Kernel/Timer: use unordered_map for callback recording 2018-10-22 21:32:34 -04:00
Weiyi Wang 8fb3d8ff38 kernel/process: move current process to kernel instance
Two functional change:
QueryProcessMemory uses the process passed from handle instead current_process
Thread::Stop() uses TLS from owner_process instead of current_process
2018-10-22 21:32:34 -04:00
Weiyi Wang d9342622b0 kennel/process: move process list to kernel instance 2018-10-22 21:32:34 -04:00
Weiyi Wang 4238754d8c kernel/process: move next_process_id to kernel instance 2018-10-22 09:30:48 -04:00
Weiyi Wang 129ca865b3
Merge pull request #4355 from lioncash/query
svc: Correct vma_map boundary check within QueryProcessMemory
2018-10-22 09:27:46 -04:00
Lioncash 930abb4b5e svc: Correct vma_map boundary check within QueryProcessMemory
This should be using the process instance retrieved within the function,
and not g_current_process, otherwise this is potentially comparing
iterators from unrelated vma_map instances (which is undefined
behavior).
2018-10-21 22:00:12 -04:00
Weiyi Wang 57ce5079bc
Merge pull request #4336 from wwylele/file-util-mingw
Only redefine some 64-bit file operation for MSVC
2018-10-21 20:34:48 -04:00
Weiyi Wang 6f1759c5bd
Merge pull request #4341 from wwylele/kernel-global
Kernel: make a kernel instance and remove object ID counter from global state
2018-10-21 18:53:36 -04:00
Zak Kurka 92f8b71137 Make ApplyIPS static and private 2018-10-21 10:42:23 -05:00
Zak Kurka 05c1816504 Stay in bounds 2018-10-21 07:48:54 -05:00
Zak Kurka 1c62bc06cf Add rle record support 2018-10-21 07:48:29 -05:00
Zak Kurka d8284dfacc Log invalid IPS attempt 2018-10-21 07:47:27 -05:00
Zak Kurka d0b54e9939 Check for EOF 2018-10-20 23:25:16 -05:00
Zak Kurka 2778801dc5 Updated based on review 2018-10-20 19:45:16 -05:00
Zak Kurka 2a5b56bb1d Be more intentional with check 2018-10-20 18:17:54 -05:00
Zak Kurka 261dc33507 Merge branch 'master' of github.com:citra-emu/citra into ips-patches 2018-10-20 18:11:38 -05:00
Zak Kurka bf50bb06f1 Minor style changes and use memcpy 2018-10-20 18:10:32 -05:00
Weiyi Wang 11729eafe1
Merge pull request #4315 from FearlessTobi/port-1332
WebService: Backport review comments from yuzu-emu/yuzu#1332
2018-10-20 18:05:06 -04:00
Zak Kurka 2496ecbaf6 Added IPS patching 2018-10-20 13:09:05 -05:00
Weiyi Wang 65ec8de31e web_service: hide dependencies to private 2018-10-20 10:47:17 -04:00
fearlessTobi 57d68bb541 Address review comments 2018-10-20 10:35:55 -04:00
fearlessTobi 7daac96862 Review comments - part 5 2018-10-20 10:35:55 -04:00
fearlessTobi 9901b289b6 Review comments -part 4 2018-10-20 10:35:55 -04:00
fearlessTobi 08793a6dae Review comments - part 3 2018-10-20 10:35:55 -04:00
fearlessTobi 8a87a6a72f Address more review comments 2018-10-20 10:35:55 -04:00
fearlessTobi b0aed19823 Address a bunch of review comments 2018-10-20 10:35:55 -04:00
fearlessTobi 111b7db759 Stop splitting includes 2018-10-20 16:31:35 +02:00
Lioncash f56a840333 game_list_p: Take map iterator contents by const reference
We don't need to copy the whole struct in this instance, we can just
utilize a reference instead.
2018-10-20 16:31:35 +02:00
Lioncash 52ec85be12 game_list_p: Amend typo in GameListItemCompat's constructor parameter
Adds a missing 'i' character that was missing in compatibility.
2018-10-20 16:31:35 +02:00
Lioncash 230edc8c7c yuzu: Move compatibility list specifics to their own source files
Lets us keep the generic portions of the compatibility list code
together, and allows us to introduce a type alias that makes it so we
don't need to type out a very long type declaration anymore, making the
immediate readability of some code better.
2018-10-20 16:31:35 +02:00
lioncash 9238015dd4 yuzu: Move GameListWorker to its own source files
This has gotten sufficiently large enough to warrant moving it to its
own source files. Especially given it dumps the file_sys headers around
code that doesn't use it for the most part.

This'll also make it easier to introduce a type alias for the
compatibility list, so a large unordered_map type declaration doesn't
need to be specified all the time (we don't want to propagate the
game_list_p.h include via the main game_list.h header).
2018-10-20 16:31:35 +02:00
Weiyi Wang eadd8b91b2
Merge pull request #4338 from FearlessTobi/port-1490
Port yuzu-emu/yuzu#1490: "citra_qt/main: Simplify OnMenuLoadFile()"
2018-10-20 10:09:41 -04:00
Weiyi Wang 18caa787d2
Merge pull request #4197 from B3n30/spsc_queue_wait
threadsafe_queue: Add PopWait and use it where possible
2018-10-19 19:36:37 -04:00
Weiyi Wang 751ebe55e9 Kernel: pass ref down to Object and wrap ID counter into kernel state 2018-10-18 21:41:36 -04:00
Weiyi Wang 87426b29ff kernel: pass ref to shared memory 2018-10-18 21:41:36 -04:00
Weiyi Wang 2a411bb501 Kernel: wrap resource limit state into kernel state; pass ref to resource limit 2018-10-18 21:41:36 -04:00
Weiyi Wang 13c26b4371 Kernel: pass ref to session pair 2018-10-18 21:41:36 -04:00
Weiyi Wang 1213a298df Kernel: pass ref to port 2018-10-18 21:41:36 -04:00
Weiyi Wang c141657d83 Kernel: pass ref to timer 2018-10-18 21:41:36 -04:00
Weiyi Wang 247249d5d3 Kernel: pass ref to sempahore 2018-10-18 21:41:36 -04:00
Weiyi Wang 181646679c ServiceManager: pass down core reference 2018-10-18 21:41:36 -04:00