What I say is true, and that really makes sens : if you remove the BMAP, its allocated memory will be freed by the engine but the panel bmap pointer will still point to it, so the crash.
Yes, You are right about the important thing, but how will you do it? I think that You will not throw in another BMAP (so the NULL thing).