fix err/warn logic in drop()