If I put all in line it gives me 85 columns?

Regarding the blank line: it is true that oFono rules specify that a blank line is needed before an "if" statement. There is one exception, which is when a variable is being allocated. The rationale I see behind is that the "if" after allocating should be always a check to see if the allocation has been successful. I think that in fact this rule is "de facto" extended in all oFono code so whenever you have to check if a function call has returned a valid value, no line is introduced between the call and the check. This can be seen in:

network.c:584, 787, ...
call-meter.c:339
stk.c:2055
...

So I can change this, but I would prefer to assume that M1 exception should be rephrased to say:
"The only exception to this rule applies when we have a function call and immediately after it we check if the returned value is valid."
This is consistent with actual core oFono code and makes sense to me, as calling a function and immediately checking the return value sound to be the right thing to keep in close lines, as in fact you can see them as being part of the same logical statement.