@@ -17,7 +17,7 @@ import (
1717 "github.com/golang/protobuf/ptypes"
1818)
1919
20- func (n * OpenBazaarNode ) NewOrderConfirmation (contract * pb.RicardianContract , addressRequest bool ) (* pb.RicardianContract , error ) {
20+ func (n * OpenBazaarNode ) NewOrderConfirmation (contract * pb.RicardianContract , addressRequest , calculateNewTotal bool ) (* pb.RicardianContract , error ) {
2121 oc := new (pb.OrderConfirmation )
2222 // Calculate order ID
2323 orderID , err := n .CalcOrderId (contract .BuyerOrder )
@@ -61,9 +61,13 @@ func (n *OpenBazaarNode) NewOrderConfirmation(contract *pb.RicardianContract, ad
6161 oc .PaymentAddress = contract .BuyerOrder .Payment .Address
6262 }
6363
64- oc .RequestedAmount , err = n .CalculateOrderTotal (contract )
65- if err != nil {
66- return nil , err
64+ if calculateNewTotal {
65+ oc .RequestedAmount , err = n .CalculateOrderTotal (contract )
66+ if err != nil {
67+ return nil , err
68+ }
69+ } else {
70+ oc .RequestedAmount = contract .BuyerOrder .Payment .Amount
6771 }
6872 contract .VendorOrderConfirmation = oc
6973 contract , err = n .SignOrderConfirmation (contract )
@@ -74,7 +78,7 @@ func (n *OpenBazaarNode) NewOrderConfirmation(contract *pb.RicardianContract, ad
7478}
7579
7680func (n * OpenBazaarNode ) ConfirmOfflineOrder (contract * pb.RicardianContract , records []* wallet.TransactionRecord ) error {
77- contract , err := n .NewOrderConfirmation (contract , false )
81+ contract , err := n .NewOrderConfirmation (contract , false , false )
7882 if err != nil {
7983 return err
8084 }
0 commit comments