Jennifer Hudson snaps on media