Suggestion:

if not new_label:
  return


No need to update the index if the label passed to add_label() already exists