[Serializable]
[ComVisible (true)]
[MonoTODO ("Serialized objects are not compatible with MS.NET")]
+ [StructLayout (LayoutKind.Sequential)]
public class StackFrame {
public const int OFFSET_UNKNOWN = -1;
#region Keep in sync with object-internals.h
private int ilOffset = OFFSET_UNKNOWN;
private int nativeOffset = OFFSET_UNKNOWN;
+ private long methodAddress;
+ private uint methodIndex;
private MethodBase methodBase;
private string fileName;
private int lineNumber;
string filename = "<filename unknown>";
if (fileName == null)
return filename;
-#if !MOONLIGHT
try {
filename = GetFileName ();
}
catch (SecurityException) {
// CAS check failure
}
-#else
- // Silverlight always return <filename unknown> but that's not very useful for debugging
- // OTOH we do not want to share any details about the original file system (even if they
- // are likely available in the debugging symbols files) from the browser's plugin (but
- // compiling stuff from smcs is fine since it's outside the sandbox)
- try {
- if (SecurityManager.SecurityEnabled)
- filename = Path.GetFileName (fileName);
- }
- catch (ArgumentException) {
- // e.g. invalid chars in filename
- }
-#endif
return filename;
}
return nativeOffset;
}
+ internal long GetMethodAddress ()
+ {
+ return methodAddress;
+ }
+
+ internal uint GetMethodIndex ()
+ {
+ return methodIndex;
+ }
+
internal string GetInternalMethodName ()
{
return internalMethodName;