He
    swore an oath cursing himself if he smoked again
Question

                Is it acceptable for someone to take an
      oath (i.e. I swear by Allaah that I won't smoke another cigarrette) and include a curse
      upon oneself in the event that they do not follow through (i.e. may the curse of Allaah be
      on me if I smoke again)? If this is not o.k. then what should a person who has done so
      (out of ignorance) do now?
Praise be to Allah.First of all, the questioner should know that smoking is haraam. It
        appaears that he knows this, but if he does not then he should be told now, as this is
        what is agreed upon by the ulamaa (scholars), wise people and doctors.
The questioner has made a mistake by cursing himself. There are strong
        warnings in the pure shareeah addressed to those who uuter curses. For example:
(a) Abu Saeed al-Khudri said: the Messenger of Allaah 
 (peace and
        blessings of Allaah be upon him) went out on (Eid al-) Adhaa or (Eid al-) Fitrto the
        prayer place, then he went to the women and said, O women, give in charity, for I
        was shown that you will form the majority of the people of Hell. They said,
        Why, O Messenger of Allaah? He said, Because you curse too much! And you
        are ungrateful for good treatment
(Narrated by al-Bukhaari, 298; Muslim, 80).
(b) Abul-Dardaa reported that he heard the Messenger of
        Allaah 
 (peace and blessings of Allaah be upon him) say: Those who curse will not be
        witnesses or intercessors on the Day of Resurrection.
(Narrated by Muslim, 2598).
Cursing means expulsion far from the mercy of Allaah, so how can any
    Muslim pray for such a thing for himself?!
3. If the question smokes again, he is committing a sin by doing so, so
    he has to repent and also to offer kafaarat yameen (expiation for breaking his vow).
    Kafaarat yameen is: feeding or clothing ten poor persons, or freeing a slave. If he is
    unable to do that, then he has to fast three days.
And Allaah knows best.