@@ -382,40 +382,52 @@ void PaymentServer::handleURIOrFile(const QString& s)
382
382
#else
383
383
QUrlQuery uri ((QUrl (s)));
384
384
#endif
385
- if (uri.hasQueryItem (" r" ))
385
+ if (uri.hasQueryItem (" r" )) // payment request URI
386
386
{
387
387
QByteArray temp;
388
388
temp.append (uri.queryItemValue (" r" ));
389
389
QString decoded = QUrl::fromPercentEncoding (temp);
390
390
QUrl fetchUrl (decoded, QUrl::StrictMode);
391
391
392
- qDebug () << " PaymentServer::handleURIOrFile : fetchRequest(" << fetchUrl << " )" ;
393
-
394
392
if (fetchUrl.isValid ())
393
+ {
394
+ qDebug () << " PaymentServer::handleURIOrFile : fetchRequest(" << fetchUrl << " )" ;
395
395
fetchRequest (fetchUrl);
396
+ }
396
397
else
398
+ {
397
399
qDebug () << " PaymentServer::handleURIOrFile : Invalid URL: " << fetchUrl;
400
+ emit message (tr (" URI handling" ),
401
+ tr (" Payment request fetch URL is invalid: %1" ).arg (fetchUrl.toString ()),
402
+ CClientUIInterface::ICON_WARNING);
403
+ }
398
404
399
405
return ;
400
406
}
407
+ else // normal URI
408
+ {
409
+ SendCoinsRecipient recipient;
410
+ if (GUIUtil::parseBitcoinURI (s, &recipient))
411
+ emit receivedPaymentRequest (recipient);
412
+ else
413
+ emit message (tr (" URI handling" ),
414
+ tr (" URI can not be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters." ),
415
+ CClientUIInterface::ICON_WARNING);
401
416
402
- SendCoinsRecipient recipient;
403
- if (GUIUtil::parseBitcoinURI (s, &recipient))
404
- emit receivedPaymentRequest (recipient);
405
- else
406
- emit message (tr (" URI handling" ),
407
- tr (" URI can not be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters." ),
408
- CClientUIInterface::ICON_WARNING);
409
-
410
- return ;
417
+ return ;
418
+ }
411
419
}
412
420
413
- if (QFile::exists (s))
421
+ if (QFile::exists (s)) // payment request file
414
422
{
415
423
PaymentRequestPlus request;
416
424
SendCoinsRecipient recipient;
417
425
if (readPaymentRequest (s, request) && processPaymentRequest (request, recipient))
418
426
emit receivedPaymentRequest (recipient);
427
+ else
428
+ emit message (tr (" Payment request file handling" ),
429
+ tr (" Payment request file can not be read or processed! This can be caused by an invalid payment request file." ),
430
+ CClientUIInterface::ICON_WARNING);
419
431
420
432
return ;
421
433
}
@@ -594,7 +606,7 @@ void PaymentServer::netRequestFinished(QNetworkReply* reply)
594
606
.arg (reply->errorString ());
595
607
596
608
qDebug () << " PaymentServer::netRequestFinished : " << msg;
597
- emit message (tr (" Network request error" ), msg, CClientUIInterface::MSG_ERROR);
609
+ emit message (tr (" Payment request error" ), msg, CClientUIInterface::MSG_ERROR);
598
610
return ;
599
611
}
600
612
@@ -606,9 +618,16 @@ void PaymentServer::netRequestFinished(QNetworkReply* reply)
606
618
PaymentRequestPlus request;
607
619
SendCoinsRecipient recipient;
608
620
if (request.parse (data) && processPaymentRequest (request, recipient))
621
+ {
609
622
emit receivedPaymentRequest (recipient);
623
+ }
610
624
else
625
+ {
611
626
qDebug () << " PaymentServer::netRequestFinished : Error processing payment request" ;
627
+ emit message (tr (" Payment request error" ),
628
+ tr (" Payment request can not be parsed or processed!" ),
629
+ CClientUIInterface::MSG_ERROR);
630
+ }
612
631
613
632
return ;
614
633
}
@@ -621,9 +640,10 @@ void PaymentServer::netRequestFinished(QNetworkReply* reply)
621
640
.arg (reply->request ().url ().toString ());
622
641
623
642
qDebug () << " PaymentServer::netRequestFinished : " << msg;
624
- emit message (tr (" Network request error" ), msg, CClientUIInterface::MSG_ERROR);
643
+ emit message (tr (" Payment request error" ), msg, CClientUIInterface::MSG_ERROR);
625
644
}
626
- else {
645
+ else
646
+ {
627
647
emit receivedPaymentACK (GUIUtil::HtmlEscape (paymentACK.memo ()));
628
648
}
629
649
}
0 commit comments