Commit Graph

7135 Commits

Author SHA1 Message Date
Avi Halachmi (:avih) fa04f0970e gui: ESC on fullscreen: better resilience
Make sure we exit fullscreen only if the GS window is visible and in fullscreen.

While we don't currently have such cases, it's possible that the Sys_Suspend
command is called while it's already suspended (and the GS window is hidden)
but the code without this patch would have incorrectly made it visible again.
2015-10-07 01:10:43 +03:00
Avi Halachmi (:avih) 9c1688a39a GS window: try to fix ESC on fullscreen sometimes not exiting correctly
This tries to emulate LilyPad's "Safe fullscreen exit on escape" hack, and
hopefully also makes this LilyPad hack redundant, such that it would fix the
issue also with other input plugins.
2015-10-06 19:09:45 +03:00
Avi Halachmi (:avih) 4522418890 GSFrame: remove unused style argument at ShowFullScreen 2015-10-06 19:01:24 +03:00
Avi Halachmi (:avih) 2cd0829a8d updated a comment that --noguiprompt also works correctly at fullscreen
The issue that fullscreen was not restored if the --noguiprompt confirmation
was aborted was already fixed implicitly via e4d8af0, therefore the comment
ended up incorrect. Also explain why it was broken when emulation was not
suspended before this commit, and how it could have been fixed.
2015-10-06 15:31:36 +03:00
Avi Halachmi (:avih) e4d8af0c97 gui: exit prompt for --noguiprompt: suspend while visible
When using --nogui and --noguiprompt and the user presses ESC, a prompt is
displayed asking the user to confirm exiting/closing PCSX2. This patch suspends
the emulation while this prompt is displayed.

Also updated the comment that if LilyPad has "safe fullscreen exit on ESC", then
full screen is not restored automatically if this prompt is canceled.
2015-10-06 02:08:28 +03:00
Jonathan Li 5f2e60d751 gui:windows: Scale confirmation dialogs at high DPI
This should scale all the other dialogs that don't have specifics widths
set.
2015-10-05 20:11:20 +01:00
Jonathan Li 31b1e34ae8 gui:windows: Fix memory card dialogs at high DPI
Specifying a minimum size for the filename text controls seems to mess
up the size calculations at higher DPIs and causes usability issues.
Use sizers and proportions instead.

Also scale the dialog widths with the DPI.
2015-10-05 20:10:40 +01:00
Jonathan Li f11596fabc gui: Fix missing retry and abort button labels
Retry and abort don't have default labels, so you end up with blank
buttons on both Windows and Linux. Fix it.

Retry is used by the portable mode settings dialog. I'm not sure if
abort is used anywhere.
2015-10-05 20:02:32 +01:00
Jonathan Li 84b17765c2 gui: Fix memory card dialog message truncation
Use sizer flags so the messages aren't truncated. The message truncation
wasn't noticeable in English.
2015-10-05 20:02:32 +01:00
Jonathan Li 5856d77371 pcsx2: Pass IsoFile parameter by reference
Coverity CID 146905, 146906: Big parameter passed by value
(PASS_BY_VALUE)
2015-10-05 20:02:31 +01:00
Avi Halachmi (:avih) 1093c816d0 gui: recording dialog modality: more resilience
A very slight refactor of commit 9eadf3 to also handle a future case where the
audio has a dialog but the GS doesn't (currently both conditions are false).
2015-10-05 21:20:43 +03:00
Avi Halachmi (:avih) 9eadf353d9 gui: recording dialog - make pseudo-modal also for the main window
The dialog was already modal for the GS window, but the main window wasn't
blocked and pcsx2 could crash if, e.g. the user tried to close the main window
while the recording dialog was visible.

Fixes #879
2015-10-05 20:57:19 +03:00
Jonathan Li d7391badf4 Merge pull request #872 from turtleli/fix-memcard-dialog-properly
Make memory card dialog modal, fix resume on memory card dialog close bug
2015-10-04 23:00:14 +01:00
Jonathan Li 1cbae66bb3 pcsx2: Make memory card dialog modal
There were bugs in the UI handling that allowed you to resume emulation
when the memory card dialog was opened, which could potentially cause
data loss/corruption.

Make the memory card dialog modal to prevent this. Although it's
possible to do with a modeless dialog, the solution will be much more
complicated and less future proof.

This also fixes the emulation resume bug after closing the memory card
dialog.
2015-10-04 20:49:53 +01:00
Jonathan Li c17eacec04 pcsx2: Move AppOpenModalDialog
Also avoid sending a change page event if an empty string is passed and
the dialog is already open.
2015-10-04 20:46:52 +01:00
refractionpcsx2 ad784a56ec superVU: Fix missing breaks.
-This was actually a bug, may improve some games that were buggy in superVU, but these functions aren't often used.
-Coverity CID 146865 & 146864:  In recVUMI_ESIN(VURegs *, int): Missing break statement between cases in switch statement (CWE-484)
-Coverity CID 146863 & 146862: In recVUMI_EEXP(VURegs *, int): Missing break statement between cases in switch statement (CWE-484)
-Coverity CID 146855 & 146854: In recVUMI_EATAN(VURegs *, int): Missing break statement between cases in switch statement (CWE-484)
2015-10-04 15:04:34 +01:00
refractionpcsx2 3618983aaa CDVD: Comment out unreachable code.
-Left in so future checks can see what's going on.
-Coverity CID 146818: In ISOreadSector(unsigned char *, unsigned int, int): Code can never be reached because of a logical contradiction (CWE-561)
2015-10-04 14:39:57 +01:00
refractionpcsx2 4a056fe55a VIF Unpack: Remove logically dead (and pointless) code
-Coverity CID  146829: In nVifUnpack<1>(unsigned char const*): Code can never be reached because of a logical contradiction (CWE-561)
2015-10-04 14:34:46 +01:00
refractionpcsx2 99095c0529 eeRec: Fixed Negative array index write
-Coverity CID 146868: In R5900::​Dynarec::​OpcodeImpl::​recWritebackHILOMMX(int, int, int, int): Negative value used to index an array in a write operation (CWE-129)
2015-10-04 14:12:45 +01:00
refractionpcsx2 5b4eb65e68 eeInt: Fix logically dead code in PMFLH.
-Coverity CID 146817: In R5900::​Interpreter::​OpcodeImpl::​MMI::​PMFHL(): Code can never be reached because of a logical contradiction (CWE-561)
-This code is used by both the Interpreter and Recompiler, however it was probably never checked because nothing much uses it. Out of 248 games, it was called 0 times.
2015-10-04 13:34:37 +01:00
refractionpcsx2 379adf3a8e GameDB: Update entry for .hack/Fragment to include SkipMPEG. Fixes #867 2015-10-03 13:48:14 +01:00
Gregory Hainaut c7000355fe gsdx-ogl: flush debug file before exiting the application 2015-09-28 09:41:30 +02:00
Jonathan Li 8e34af5b5e wxWidgets:windows: Fix debug build menu assertion
There was a version check in the menu handling, but Windows 8.1 and
Windows 10 weren't recognised and some pre Windows 98 code was used.

This is a combination of the following wxWidgets upstream commits.
9280f836c2569d0f50301a1117f7ba144e5240d2
1966dfb17d7cb106d1dfb44df6a15b92ba3b8d5f
c87c432033f4277bc9995a4de1390a59b810a005
a8c98a119145a77b1313337314853de75562e4ab

Thanks to micove for finding the commits.
2015-09-27 23:46:12 +01:00
Jonathan Li cbd2417833 gsdx:ogl:windows: Fix calling convention mismatch
OpenGL does not use the cdecl calling convention (which is the default
calling convention for GSdx on Windows). Since DebugOutputToFile is used
by OpenGL, it needs to use the same calling convention that OpenGL uses.

This fixes a debug build crash when the OpenGL renderers are used and
debug_opengl is nonzero in the ini.
2015-09-26 22:38:05 +01:00
refractionpcsx2 953804c429 Merge pull request #849 from pgert/master
GameIndex > Added fix for the "The Incredibles" (SLUS-20905) by Prafull.
2015-09-26 19:52:52 +01:00
Jonathan Li 84bdd0ef45 pcsx2:debugger: Add missing break
Coverity CID 146856: Missing break in switch (MISSING_BREAK)
2015-09-26 19:33:36 +01:00
Miguel A. Colón Vélez 3dd3ed2602 Buildbot: Revert to using the sln instead of the project file.
Bot does not like using the project directly.
2015-09-26 10:49:25 -04:00
refractionpcsx2 b63590152a Vif: Fixed logically dead code (not that it mattered)
-Coverity CID 146826: In vifExecQueue(int): Code can never be reached because of a logical contradiction (CWE-561)
2015-09-26 13:55:50 +01:00
refractionpcsx2 4b63847e04 microVU: Fix logically dead code + bug
-Coverity CID 146821: In _mVUflagPass(microVU &, unsigned int, unsigned int, unsigned int, std::​vector<unsigned int, std::​allocator<unsigned int>> &): Code can never be reached because of a logical contradiction (CWE-561)

-Coverity CID 146822: In mVUcompileSingleInstruction(microVU &, unsigned int, unsigned int, microFlagCycles &): Code can never be reached because of a logical contradiction (CWE-561)
2015-09-26 13:34:20 +01:00
refractionpcsx2 a89307c5ba Vif: Fix logically dead code with something slightly quicker. Coverity CID 146827: In _vifCode_MPG(int, unsigned int, unsigned int const*, int): Code can never be reached because of a logical contradiction (CWE-561) 2015-09-26 13:00:28 +01:00
Gregory Hainaut 00e37224ed gsdx: check the return value of mkdir function
Reported by coverity
2015-09-26 13:51:23 +02:00
refractionpcsx2 457362ba84 VU Interpreter: Fix uninitialized scalar variable Coverity CID #146964. 2015-09-26 12:35:03 +01:00
micove 166818670e Merge pull request #833 from micove/Build_Bot
Simplify BuildBot and add a helper script for compilation.
2015-09-26 06:58:17 -04:00
Miguel A. Colón Vélez f201aac946 Simplify BuildBot and add a helper script for compilation. 2015-09-26 06:27:34 -04:00
pgert 406c56e3d8 GameIndex > Added fix for the "The Incredibles" (SLUS-20905) by Prafull. 2015-09-25 22:56:04 +02:00
refractionpcsx2 931fdf0bcd Merge pull request #839 from ssakash/patch-1
MicroVU: Fix a logically dead code for XGKick Instruction
2015-09-25 21:50:10 +01:00
Gregory Hainaut 070afe57af svu: fix buffer overrun on ialu&fmac
CID 146904 (#1 of 1): Out-of-bounds write (OVERRUN)
10. overrun-local: Overrunning array VU->ialu of 8 16-byte elements at element index 8 (byte offset 128) using index i (which evaluates to 8).

CID 146903 (#1 of 1): Out-of-bounds write (OVERRUN)
10. overrun-local: Overrunning array VU->fmac of 8 32-byte elements at element index 8 (byte offset 256) using index i (which evaluates to 8).
2015-09-25 21:04:58 +02:00
Gregory Hainaut 037bd3109e pcsx2: extend the size of plugin m_info array to avoid out-of-bounds
Note: previous fix +1 wasn't enough.
2015-09-25 21:00:16 +02:00
Gregory Hainaut 78b73ba585 gsdx: avoid null pointer deferencement 2015-09-25 20:59:36 +02:00
Gregory Hainaut 421043ed12 Merge branch 'coverity-qa-extra' 2015-09-25 18:42:20 +02:00
Gregory Hainaut 927dd827ce common: make DESTRUCTOR_CATCHALL macro really exception safe
Console.Error() can trigger some exceptions (like out of memory)

v2:
Add a default fallback catch(...) in case someone badly add a new
exception in the codebase
2015-09-25 18:41:19 +02:00
Gregory Hainaut bb6b792d06 Merge pull request #843 from pgert/master
sv_SE - update & improvements of Swedish translation.
2015-09-25 18:27:04 +02:00
Akash ffebefb65e MicroVU: Rework a logically dead code for XGkick.
mVU_XGKICK_CYCLES can only take delay cycle values 1 and 6, it can't take NULL value. the conditional check and parameter is useless here.
2015-09-24 03:05:40 +05:30
Gregory Hainaut 2eb73644e9 pcsx2|common: use DESTRUCTOR_CATCHALL to catch exception in various destructor
Allow to print a nice error message instead of a brutal abort in case of
massive failure
2015-09-23 09:47:27 +02:00
Gregory Hainaut 0bb62bb0fd pcsx2:init IsInterpreter member in constructor 2015-09-23 09:47:27 +02:00
Gregory Hainaut 4d8a23c1fc pcsx2:gui: init all members in constructor 2015-09-23 09:47:27 +02:00
Gregory Hainaut e41f786c72 pcsx2:gui: drop useless m_FrameCounter 2015-09-23 09:47:27 +02:00
Gregory Hainaut 5b4ba02012 pcsx2: init members in constructor 2015-09-23 09:47:27 +02:00
Gregory Hainaut 1c14389c7f pcsx2:DebugTools: init members in constructor 2015-09-23 09:47:27 +02:00
Gregory Hainaut 78ed0495ce pcsx2:CDVD: init members in constructor 2015-09-23 09:47:27 +02:00