1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-07-07 00:36:00 +02:00

Win32 debugging fixes, more work on custom compile commands

Fixed working dir for 'launch'
Fixed attaching to process - stack trace wasn't updating properly
Fixed more custom compile stuff, and BeefySysLib bin destination
Fixed linking issues related to Bfp* and Bp* exports in both BeefRT and BeefySysLib
Fixed a crash with conditional breakpoints
Fixed release mode IDE issues (related to hot swap breakpoints)
Fixed hotswapping type data with LLVM builds
Fixed 'Pause' state processing Running_ToTempBreakpoint for ScriptManager
Fixed Win32 step out when there's an ESP adjustment at the return site
Made step-out skip over "unimportant" instructions at return site
This commit is contained in:
Brian Fiete 2019-08-29 14:19:07 -07:00
parent 09016c8dc0
commit a367b8165f
60 changed files with 1131 additions and 1065 deletions

View file

@ -2,7 +2,6 @@ FileVersion = 1
[Project]
Name = "Beefy2D"
TargetType = "BeefLib"
DefaultNamespace = ""
[Configs.Debug.Win32]
@ -11,14 +10,20 @@ PreprocessorMacros = ["DEBUG", "BF32"]
OptimizationLevel = "O0"
[Configs.Debug.Win64]
OtherLinkFlags = "$(LinkFlags) $(ProjectDir)/dist/BeefySysLib64_d.lib"
CLibType = "Static"
BeefLibType = "Static"
PostBuildCmds = ["CopyToDependents(\"$(ProjectDir)/dist/BeefySysLib64_d.dll\")", "CopyToDependents(\"$(ProjectDir)/dist/BeefySysLib64_d.pdb\")"]
[Configs.Release.Win32]
OtherLinkFlags = ""
PreprocessorMacros = ["RELEASE", "BF32"]
OptimizationLevel = "O0"
[Configs.Release.Win64]
OtherLinkFlags = "$(LinkFlags) $(ProjectDir)/dist/BeefySysLib64.lib"
PostBuildCmds = ["CopyToDependents(\"$(ProjectDir)/dist/BeefySysLib64.dll\")", "CopyToDependents(\"$(ProjectDir)/dist/BeefySysLib64.pdb\")"]
[Configs.Paranoid.Win32]
CLibType = "Static"
BeefLibType = "Static"

View file

@ -250,7 +250,8 @@ namespace Beefy.theme.dark
{
base.RemovedFromWindow();
Debug.Assert(mHasClosed);
if (!mHasClosed)
Close();
WidgetWindow.sOnMouseDown.Remove(scope => HandleMouseDown, true);
WidgetWindow.sOnMouseWheel.Remove(scope => HandleMouseWheel, true);

View file

@ -593,7 +593,7 @@ namespace Beefy.widgets
for (ListViewItem child in mChildItems)
{
child.mVisible = (mShowChildPct > 0.0f);
child.Resize(child.mX, curY, mWidth - child.mX, child.mSelfHeight);
child.ResizeClamped(child.mX, curY, mWidth - child.mX, child.mSelfHeight);
float resizeXOfs = xOffset;
if (mParentItem != null)
resizeXOfs += mX;

View file

@ -295,6 +295,17 @@ namespace System.IO
outDrive.Append(path, 0, 2);
}
/// Tests if the given path contains a root. A path is considered rooted
/// if it starts with a backslash ("\") or a drive letter and a colon (":").
public static bool IsPathRooted(StringView path)
{
CheckInvalidPathChars(path);
int length = path.Length;
if ((length >= 1 && (path[0] == DirectorySeparatorChar || path[0] == AltDirectorySeparatorChar)) || (length >= 2 && path[1] == VolumeSeparatorChar))
return true;
return false;
}
public static void GetRelativePath(StringView fullPath, StringView curDir, String outRelPath)
{
String curPath1 = scope String(curDir);

View file

@ -72,6 +72,7 @@ namespace System.Reflection
case InvalidTarget;
case InvalidArgument(int32 paramIdx);
case ParamCountMismatch;
case FFIError;
}
public Result<Variant, CallError> Invoke(Object target, params Object[] args)
@ -308,9 +309,15 @@ namespace System.Reflection
FFICaller caller = .();
if (ffiParamList.Count > 0)
caller.Prep(abi, (.)ffiParamList.Count, ffiRetType, &ffiParamList[0]);
{
if (caller.Prep(abi, (.)ffiParamList.Count, ffiRetType, &ffiParamList[0]) case .Err)
return .Err(.FFIError);
}
else
caller.Prep(abi, 0, ffiRetType, null);
{
if (caller.Prep(abi, 0, ffiRetType, null) case .Err)
return .Err(.FFIError);
}
void* funcPtr = mMethodData.mFuncPtr;
if (mMethodData.mFlags.HasFlag(.Virtual))