Don't attempt to generate a description for null external pointers

This fixes an issue caused by the way external pointer objects work in R. When an object containing an `EXTPTRSXP` is saved, the value of the external pointer is not saved. When that object is loaded, it comes back to life with a `null` external pointer, and if routines that access that pointer without checking it, crashes ensue.
Great, thanks for putting that through its paces!