@@ -1719,7 +1719,6 @@ Rectangle {
17191719 console .log (' getProof: Error checking TxId and/or address' );
17201720 }
17211721
1722- console .log (" getProof: Generate clicked: txid " + hash + " , address " + address);
17231722 middlePanel .getProofClicked (hash, address, ' ' , null );
17241723 informationPopup .title = qsTr (" Payment proof" ) + translationManager .emptyString ;
17251724 informationPopup .text = qsTr (" Generating payment proof" ) + " ..." + translationManager .emptyString ;
@@ -1738,17 +1737,21 @@ Rectangle {
17381737 trMiddle = ' </b></td><td style="padding-left:10px;padding-top:5px;">' ,
17391738 trEnd = " </td></tr>" ;
17401739
1740+ // destinations may intentionally contain "<br>" separators inserted by the wallet backend;
1741+ // escape everything first, then restore the literal "<br>" so line breaks are preserved.
1742+ destinations = Utils .htmlEscape (destinations).replace (/ <br>/ g , ' <br>' );
1743+
17411744 return ' <table border="0">'
1742- + (tx_id ? trStart + qsTr (" Tx ID:" ) + trMiddle + tx_id + trEnd : " " )
1743- + (dateTime ? trStart + qsTr (" Date" ) + " :" + trMiddle + dateTime + trEnd : " " )
1744- + (amount ? trStart + qsTr (" Amount" ) + " :" + trMiddle + amount + trEnd : " " )
1745- + (address ? trStart + qsTr (" Address:" ) + trMiddle + address + trEnd : " " )
1746- + (paymentId ? trStart + qsTr (" Payment ID:" ) + trMiddle + paymentId + trEnd : " " )
1747- + (integratedAddress ? trStart + qsTr (" Integrated address" ) + " :" + trMiddle + integratedAddress + trEnd : " " )
1748- + (tx_key ? trStart + qsTr (" Tx key:" ) + trMiddle + tx_key + trEnd : " " )
1745+ + (tx_id ? trStart + qsTr (" Tx ID:" ) + trMiddle + Utils . htmlEscape ( tx_id) + trEnd : " " )
1746+ + (dateTime ? trStart + qsTr (" Date" ) + " :" + trMiddle + Utils . htmlEscape ( dateTime) + trEnd : " " )
1747+ + (amount ? trStart + qsTr (" Amount" ) + " :" + trMiddle + Utils . htmlEscape ( amount) + trEnd : " " )
1748+ + (address ? trStart + qsTr (" Address:" ) + trMiddle + Utils . htmlEscape ( address) + trEnd : " " )
1749+ + (paymentId ? trStart + qsTr (" Payment ID:" ) + trMiddle + Utils . htmlEscape ( paymentId) + trEnd : " " )
1750+ + (integratedAddress ? trStart + qsTr (" Integrated address" ) + " :" + trMiddle + Utils . htmlEscape ( integratedAddress) + trEnd : " " )
1751+ + (tx_key ? trStart + qsTr (" Tx key:" ) + trMiddle + Utils . htmlEscape ( tx_key) + trEnd : " " )
17491752 + (tx_note ? trStart + qsTr (" Tx note:" ) + trMiddle + Utils .htmlEscape (tx_note) + trEnd : " " )
17501753 + (destinations ? trStart + qsTr (" Destinations:" ) + trMiddle + destinations + trEnd : " " )
1751- + (rings ? trStart + qsTr (" Rings:" ) + trMiddle + rings + trEnd : " " )
1754+ + (rings ? trStart + qsTr (" Rings:" ) + trMiddle + Utils . htmlEscape ( rings) + trEnd : " " )
17521755 + " </table>"
17531756 + translationManager .emptyString ;
17541757 }
0 commit comments