DirectEntry cursor position bug?

It’s in TextAssembler::calc_r_c

  if (n == 0) {
    // If there are no characters before n, no need to mess with soft
    // hyphens.
    c = row._string.size();

n is cursor position. Ask why if it’s 0, the column is filled with the row string size, instead of 0 ?