Ed Sheeran has had a crazy 2017, but he hasn't completely packed away his guitar for the summer.

Judging by the shorts he was wearing, you might think that the Englishman was on his holliers in New York - but as he was in the city during a short break on his current US tour, he turned up at pop heartthrob Shawn Mendes's gig at Brooklyn's Barclays Center last night.

The pair duetted on Mendes's song 'Mercy' and as you'll see below, the crowd were certainly not expecting to see Sheeran.

Many have pointed out that it's almost four years since Mendes tweeted the below: