]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MINICERN/packlib/kernlib/kerngen/ccgen/irtgs/lenocc.c
Bugfix in AliPoints2Memory
[u/mrichter/AliRoot.git] / MINICERN / packlib / kernlib / kerngen / ccgen / irtgs / lenocc.c
CommitLineData
fe4da5cc 1/*
2 * $Id$
3 *
4 * $Log$
5 * Revision 1.1.1.1 1996/02/15 17:49:33 mclareni
6 * Kernlib
7 *
8 */
9/*> ROUTINE LENOCC
10 CERN PROGLIB# M507 LENOCC .VERSION KERNIRT 1.05 920511
11 ORIG. 30/04/92, RDM + JZ
12
13 N = LENOCC (CHLINE) find last non-blank character in CHLINE
14*/
15 int lenocc_(chline, len)
16 char *chline;
17 int len;
18{
19 static unsigned int blnk = 0x20202020;
20 unsigned int *wdcur;
21 char *chcur;
22 int ntail, i;
23
24 chcur = chline + len;
25 if (len <= 24) goto small;
26
27/* ---- handle long string */
28
29/* look for trailing blank words */
30
31 wdcur = (unsigned int*) (chcur-4);
32 while (wdcur >= (unsigned int*)chline )
33 { if (*wdcur != blnk) break; wdcur--; }
34
35/* find last non-blank character */
36
37 chcur = (char*) (wdcur+1);
38 while (chcur > chline)
39 { if (*--chcur != ' ') goto exit; }
40 return 0;
41
42exit: return chcur+1 - chline;
43
44/* ---- handle short string */
45
46small:
47 while (chcur > chline)
48 { if (*--chcur != ' ') goto exit; }
49 return 0;
50}
51/*> END <----------------------------------------------------------*/