Beispiel #1
0
 private static bool TryParseSymbol(XmlReader reader, int scriptOffset, int functionNameIndex, int sourceFileId, out ScriptSharpSymbol symbol)
 {
     symbol = default(ScriptSharpSymbol);
     try
     {
         int num  = int.Parse(reader.GetAttribute("ScriptStartPosition"));
         int num2 = int.Parse(reader.GetAttribute("ScriptEndPosition"));
         symbol = new ScriptSharpSymbol
         {
             ScriptStartPosition = scriptOffset + num,
             ScriptEndPosition   = scriptOffset + num2,
             FunctionNameIndex   = functionNameIndex,
             ParentSymbol        = -1,
             SourceStartLine     = int.Parse(reader.GetAttribute("SourceStartLine")),
             SourceFileId        = (uint)sourceFileId
         };
     }
     catch (ArgumentNullException)
     {
         return(false);
     }
     catch (OverflowException)
     {
         return(false);
     }
     catch (FormatException)
     {
         return(false);
     }
     return(true);
 }
        private ResultCode TryDeMinifyAndDeObfuscate(string package, int line, int column, out CallStackFrameInfo callStackFrameInfo)
        {
            AjaxMinSymbolForScriptSharp javaScriptSymbol = default(AjaxMinSymbolForScriptSharp);

            javaScriptSymbol.ScriptEndLine     = line;
            javaScriptSymbol.ScriptStartLine   = line;
            javaScriptSymbol.ScriptEndColumn   = column;
            javaScriptSymbol.ScriptStartColumn = column;
            AjaxMinSymbolForScriptSharp ajaxMinSymbolForScriptSharp;

            if (!this.parameters.MinificationSymbolsMapForScriptSharp.Search(package, javaScriptSymbol, out ajaxMinSymbolForScriptSharp))
            {
                callStackFrameInfo = null;
                return(ResultCode.FailedToDeMinify);
            }
            ScriptSharpSymbolWrapper javaScriptSymbol2 = new ScriptSharpSymbolWrapper(new ScriptSharpSymbol
            {
                ScriptStartPosition = ajaxMinSymbolForScriptSharp.SourceStartPosition,
                ScriptEndPosition   = ajaxMinSymbolForScriptSharp.SourceEndPosition
            });
            ScriptSharpSymbolWrapper scriptSharpSymbolWrapper;

            if (!this.parameters.ObfuscationSymbolsMap.Search(package, javaScriptSymbol2, out scriptSharpSymbolWrapper))
            {
                callStackFrameInfo = null;
                return(ResultCode.FailedToDeObfuscate);
            }
            ScriptSharpSymbol innerSymbol = scriptSharpSymbolWrapper.InnerSymbol;

            callStackFrameInfo = new CallStackFrameInfo
            {
                StartLine    = innerSymbol.SourceStartLine,
                FunctionName = this.parameters.ObfuscationSymbolsMap.GetFunctionName(innerSymbol.FunctionNameIndex),
                FileName     = ClientWatsonDatapointHandler.GetRelativeFilePath(this.parameters.ObfuscationSymbolsMap.GetSourceFilePathFromId(innerSymbol.SourceFileId)),
                FolderPath   = this.parameters.ExchangeSourcesPath
            };
            return(ResultCode.Success);
        }
Beispiel #3
0
 // Token: 0x0600258A RID: 9610 RVA: 0x0008828C File Offset: 0x0008648C
 public ScriptSharpSymbolWrapper(ScriptSharpSymbol symbol)
 {
     this.symbol = symbol;
 }
Beispiel #4
0
 public ParentContext(ScriptSharpSymbol symbol, bool isMethod)
 {
     this.Symbol   = symbol;
     this.IsMethod = isMethod;
     this.Children = new List <int>();
 }
Beispiel #5
0
 public ParentContext(ScriptSharpSymbol symbol) : this(symbol, false)
 {
 }
Beispiel #6
0
 private static ScriptSharpSourceMapLoader.ParentContext PopNonParentSymbolsOut(Stack <ScriptSharpSourceMapLoader.ParentContext> parentCandidateStack, ScriptSharpSymbol newSymbol, List <ScriptSharpSymbolWrapper> symbolList)
 {
     while (parentCandidateStack.Count > 0)
     {
         ScriptSharpSourceMapLoader.ParentContext parentContext = parentCandidateStack.Peek();
         if (parentContext.Symbol.ScriptEndPosition >= newSymbol.ScriptEndPosition)
         {
             return(parentContext);
         }
         ScriptSharpSourceMapLoader.PopItemAndAddToList(parentCandidateStack, symbolList);
     }
     return(null);
 }