开发者

How to analyze opera crash log

I have developed an extension for opera which lets users to "Google +1" websites. It works fine on stable opera releases,but it crashes opera when run on alpha releases(Opera Next). The extension passed the moderation and its published,now users are complaining that it crashes with Opera 11.50 which is a alpha release.

Im trying to find ways to fix it,But i only have the crash log to detect where the problem is occuring.

Here is the full crash log(paste bin is giving problems,didnt know where to upload): http://www.mediafire.com/?y3zzn4it1662t4u

Crash log:

OPERA-CRASHLOG V1 desktop 11.50 1027 windows
Opera.exe 1027 (1) caused exception C0000005 at address 73002000 (Base: 90000)

Registers:
EAX=6DEE0167   EBX=063DABD8   ECX=06AF77C0   EDX=004AE5B4   ESI=00000000
EDI=033C1500   EBP=004AE5C8   ESP=004AE5AC   EIP=73002000 FLAGS=00010206
CS=0023   DS=002B   SS=002B   ES=002B   FS=0053   GS=002B
FPU stack:
4015A584B00000000000 00000000000000000000 00000000000000000000
00000000000000000000 00000000000000000000 4007E273560000000000
40038000000000000000 BFF8A200000000000000 SW=4026 CW=027F

Stack dump:
004AE5AC  6D50F2A3  004AE5B4  00000000  033C1500  £òPm´åJ......<
004AE5BC  033C1500  00000000  004AE680 >004AE680  .<....۾J.۾J.
004AE5CC  6D725605  00000000  6D56BFEC  0335DE28  Vrm....ì¿Vm(Þ5
004AE5DC  02E46FA8  063DABC0  004AE688  063DABA0  ¨oäÀ«=ˆæJ. «=
004AE5EC  00000000  00000000  033C1500  00000000  .........<....
004AE5FC  00000000  00000000  00000000  00000000  ................
004AE60C  6DC6A185  00000001  02E46FD8  066324C0  …¡Æm...ØoäÀ$c
004AE61C  00000000  00000000  005889D0  00000001  ........ЉX....
004AE62C  D155E764  D155E764  004AE674  06B028D0  dçUÑdçUÑtæJ.Ð(°
004AE63C  0288EC08  02980B48  77A42907  77A69684  ìˆH.˜)¤w„–¦w
004AE64C  004AE67C  6DC6A2F3  02981760  06B028D0  |æJ.ó¢Æm`˜Ð(°
004AE65C  02E46FD8  06B028D0  06B028DC  02980B48  ØoäÐ(°Ü(°H.˜

If anyone want to analyze my extension:

index.html:

    <!DOCTYPE html>
<html lang="en">
<head>

 <script type="text/javascript">
 /* Window onload event listener */
window.addEventListener("load", function()
      {
       var theButton;
       /* Button properties */
        var ToolbarUIItemProperties = {
            title: "+1 this page",      /*Button title */
            icon: "icons/icon_16.png",  /*Button icon */
            popup: {href: "popup.html", width: 70, height: 90},  /* popup properties */
            badge: {              /* badge properties (not useful right just incase) */
             textContent: '',
             backgroundColor: '#006',
             color: '#ff6',
             display: 'block'
            }
      }
         theButton = opera.contexts.toolbar.createItem(ToolbarUIItemProperties);
         opera.contexts.toolbar.addItem(theButton);  /*Add button to toolbar */
       /* listen for onconnect */
    opera.extension.onconnect = function(event){
      try {   
           event.source.postMessage(opera.extension.tabs.getFocused().url);   
           /* get current focused tab and post it*/
         }
         catch(e)
         { 
         }
    }


       },false);


    </script>

</head>
<body>

</body>
</html>

popup.html:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <meta http-equiv="Content-Style-Type" content="text/css">
<title></title>
</head>
<body>
<script type="text/javascript" src="http://apis.google.com/js/plusone.js">  /* Load plusone.js */
  {parsetags: 'explicit'}    /* Define explicit render */
</script>

<div id="plusOneContainer"><!-- Container to place the result -->
<g:plusone href="http://www.google.com" size="tall"></g:plusone>
<!-- <img src="icons/loader.gif" alt="Loading..." width=100% />  Loading image -->
</div>


<script>
 /* Window onload event listener */
window.addEventListener("load", function(){   
 /*Listen for message */    
    opera.extension.onmessage = function(event){

        var url=event.data;  /* get current tab url */
        alert(url);
        /* document.getElementById("plusOneContainer").in开发者_如何学JAVAnerHTML = '<g:plusone href="' + url + '" size="tall"></g:plusone>';   render tag */

        }
    }, false);
</script>



<script type="text/javascript">
function render() {
gapi.plusone.go();   /* This renders all +1 tags */
}
window.onload = window.setTimeout(render, 100);
</script>
</body>
</html>


The crash is known as CORE-39188 in Opera's bugtracker, and it will hopefully get fixed before the final 11.50 release.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜