In conditional probability we use P(A|B) = P(A and B)/P(B). So basically you are finding P(One is a Boy AND Other is Boy)/P(One is a boy).
Now P(One is a Boy) = P(First is a boy) + P(Second is a Boy) - P(Both Are boys) = 0.5 + 0.5 - 0.5*0.5 = 0.75 which matches the tree diagram.
P(One is a Boy AND Other is a Boy) = 0.25 since both are independent of each other and the only possibility is BB.
So your answer is 0.25/0.75 = 1/3.
If you don't follow what I've done, then please say so to stop any confusion.
How I would do it: Since you have at least one boy the (equally likely) possible outcomes are:
where "B" represents "this child is a boy" and "G" represents "this child is a girl" and the order is order of birth. Of course, "GG" is not shown because we know that there is at least one boy.
Since there are three equally likely outcomes and one of them is "BB" the probability that both children are boys is 1/3.
Your error, using the tree, was assigning "100%" probability to the third branch and "0" to the fourth since that would not have given "at least one boy". Boys and girls are equally likely (at least in problems like this) at each birth so you should have still assigned "50%" to both branches, then just ignored the last branch. That would have given .25+ .25+ .25= .75 overall and .25 to "two boys". .
(Notice that if we had been told "I have two kids and the elder is a boy", the answer would have been different. Of "BB", "BG", and "GB", only two have "B" first, meaning the elder child is a boy. One of those two is "BB" so the probability that both children are boys, given that the elder child is a boy, is 1/2.)