Bug 1104055 - Fix memory leak in CameraControl (includes backports of bug 1058452 and bug 1102986). r=aosmond, a=bajaj