view 3rdparty/packages/ed/join.c @ 2876:1ca5c484c7a7

joydrv_6551L.asm: Remove spurious ! (OR) from expression
author Tormod Volden <debian.tormod@gmail.com>
date Sun, 24 Nov 2013 15:48:17 +0100
parents bef1844de0dc
children
line wrap: on
line source

/*      join.c  */
#include <stdio.h>
#include "tools.h"
#include "ed.h"

extern int fchanged;

int join(first, last)
int first, last;
{
  char buf[MAXLINE];
  char *cp = buf, *str;
  int num;

  if (first <= 0 || first > last || last > lastln) return(ERR);
  if (first == last) {
        curln = first;
        return 0;
  }
  for (num = first; num <= last; num++) {
        str = gettxt(num);

        while (*str != NL && cp < buf + MAXLINE - 1) *cp++ = *str++;

        if (cp == buf + MAXLINE - 1) {
                printf("line too long\n");
                return(ERR);
        }
  }
  *cp++ = NL;
  *cp = EOS;
  del(first, last);
  curln = first - 1;
  ins(buf);
  fchanged = TRUE;
  return 0;
}