The contract, the details of which have never been made public under both the Harper and Trudeau Govts would be the key here, no?

If our contract has stipulations about acceptable use (really having a hard time picturing this) then Canada could use this as a way to get out of further shipments.   

IF there is no language in the contract to cancel, then we are asking a private Canadian company to cancel a contract that carried a Canadian Govt trade guarantee.    So compensation would be warranted both for the company as well as Saudi Arabia.     So we would be paying the company for not shipping orders and we would be paying Saudi Arabia for reneging on the contract (and they can use the payment to source elsewhere).     Net benefit - zero.

So unless there is contract language to cancel (and we, as taxpayers will likely never know) then the realpolitik solution is to learn from this and not repeat the mistake for any future contracts.