Index: trunk/src/org/openstreetmap/josm/actions/AboutAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/AboutAction.java	(revision 5848)
+++ trunk/src/org/openstreetmap/josm/actions/AboutAction.java	(revision 5849)
@@ -5,5 +5,4 @@
 
 import java.awt.Dimension;
-import java.awt.Font;
 import java.awt.GridBagLayout;
 import java.awt.event.ActionEvent;
@@ -22,8 +21,10 @@
 import org.openstreetmap.josm.gui.util.GuiHelper;
 import org.openstreetmap.josm.plugins.PluginHandler;
+import org.openstreetmap.josm.tools.BugReportExceptionHandler;
 import org.openstreetmap.josm.tools.GBC;
 import org.openstreetmap.josm.tools.ImageProvider;
 import org.openstreetmap.josm.tools.Shortcut;
 import org.openstreetmap.josm.tools.UrlLabel;
+import org.openstreetmap.josm.tools.Utils;
 
 /**
@@ -83,5 +84,5 @@
         info.add(GBC.glue(0,5), GBC.eol());
         info.add(new JLabel(tr("Bug Reports")), GBC.std().insets(10,0,10,0));
-        info.add(new UrlLabel("http://josm.openstreetmap.de/newticket",2), GBC.eol().fill(GBC.HORIZONTAL));
+        info.add(BugReportExceptionHandler.getBugReportUrlLabel(Utils.strip(ShowStatusReportAction.getReportHeader())), GBC.eol().fill(GBC.HORIZONTAL));
 
         about.addTab(tr("Info"), info);
Index: trunk/src/org/openstreetmap/josm/actions/ShowStatusReportAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/ShowStatusReportAction.java	(revision 5848)
+++ trunk/src/org/openstreetmap/josm/actions/ShowStatusReportAction.java	(revision 5849)
@@ -28,4 +28,6 @@
 import org.openstreetmap.josm.gui.ExtendedDialog;
 import org.openstreetmap.josm.plugins.PluginHandler;
+import org.openstreetmap.josm.tools.BugReportExceptionHandler;
+import org.openstreetmap.josm.tools.OpenBrowser;
 import org.openstreetmap.josm.tools.Shortcut;
 import org.openstreetmap.josm.tools.Utils;
@@ -113,5 +115,6 @@
     public void actionPerformed(ActionEvent e) {
         StringBuilder text = new StringBuilder();
-        text.append(getReportHeader());
+        String reportHeader = getReportHeader();
+        text.append(reportHeader);
         try {
             Map<String, Setting> settings = Main.pref.getAllSettings();
@@ -141,12 +144,15 @@
         ExtendedDialog ed = new ExtendedDialog(Main.parent,
                 tr("Status Report"),
-                new String[] {tr("Copy to clipboard and close"), tr("Close") });
-        ed.setButtonIcons(new String[] {"copy.png", "cancel.png" });
+                new String[] {tr("Copy to clipboard and close"), tr("Report bug"), tr("Close") });
+        ed.setButtonIcons(new String[] {"copy.png", "bug.png", "cancel.png" });
         ed.setContent(sp, false);
         ed.setMinimumSize(new Dimension(380, 200));
         ed.setPreferredSize(new Dimension(700, Main.parent.getHeight()-50));
 
-        if (ed.showDialog().getValue() != 1) return;
-        Utils.copyToClipboard(text.toString());
+        switch (ed.showDialog().getValue()) {
+            case 1: Utils.copyToClipboard(text.toString()); break;
+            case 2: OpenBrowser.displayUrl(BugReportExceptionHandler.getBugReportUrl(
+                        Utils.strip(reportHeader)).toExternalForm()) ; break;
+        }
     }
 }
Index: trunk/src/org/openstreetmap/josm/tools/BugReportExceptionHandler.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/BugReportExceptionHandler.java	(revision 5848)
+++ trunk/src/org/openstreetmap/josm/tools/BugReportExceptionHandler.java	(revision 5849)
@@ -7,4 +7,5 @@
 import java.awt.GridBagLayout;
 import java.io.ByteArrayOutputStream;
+import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.StringWriter;
@@ -121,12 +122,4 @@
                             }
                             
-                            ByteArrayOutputStream out = new ByteArrayOutputStream();
-                            GZIPOutputStream gzip = new GZIPOutputStream(out);
-                            gzip.write(urltext.getBytes("UTF-8"));
-                            gzip.close();
-
-                            URL url = new URL("http://josm.openstreetmap.de/josmticket?" +
-                                    "gdata="+Base64.encode(ByteBuffer.wrap(out.toByteArray()), true));
-
                             JPanel p = new JPanel(new GridBagLayout());
                             p.add(new JMultilineLabel(
@@ -137,5 +130,5 @@
                                     tr("You should also update your plugins. If neither of those help please " +
                                             "file a bug report in our bugtracker using this link:")), GBC.eol());
-                            p.add(new UrlLabel(url.toString(), "http://josm.openstreetmap.de/josmticket?...",2), GBC.eop().insets(8,0,0,0));
+                            p.add(getBugReportUrlLabel(urltext), GBC.eop().insets(8,0,0,0));
                             p.add(new JMultilineLabel(
                                     tr("There the error information provided below should already be " +
@@ -175,3 +168,38 @@
         return handlingInProgress;
     }
+    
+    /**
+     * Replies the URL to create a JOSM bug report with the given debug text
+     * @param debugText The debug text to provide us
+     * @return The URL to create a JOSM bug report with the given debug text
+     * @since 5849
+     */
+    public static URL getBugReportUrl(String debugText) {
+        try {
+            ByteArrayOutputStream out = new ByteArrayOutputStream();
+            GZIPOutputStream gzip = new GZIPOutputStream(out);
+            gzip.write(debugText.getBytes("UTF-8"));
+            gzip.close();
+    
+            return new URL("http://josm.openstreetmap.de/josmticket?" +
+                    "gdata="+Base64.encode(ByteBuffer.wrap(out.toByteArray()), true));
+        } catch (IOException e) {
+            e.printStackTrace();
+            return null;
+        }
+    }
+    
+    /**
+     * Replies the URL label to create a JOSM bug report with the given debug text
+     * @param debugText The debug text to provide us
+     * @return The URL label to create a JOSM bug report with the given debug text
+     * @since 5849
+     */
+    public static final UrlLabel getBugReportUrlLabel(String debugText) {
+        URL url = getBugReportUrl(debugText);
+        if (url != null) {
+            return new UrlLabel(url.toString(), "http://josm.openstreetmap.de/josmticket?...", 2);
+        }
+        return null;
+    }
 }
