1 #include <petsc/private/ftnimpl.h>
2
3 #if defined(PETSC_HAVE_FORTRAN_CAPS)
4 #define petscstrncpy_ PETSCSTRNCPY
5 #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE)
6 #define petscstrncpy_ petscstrncpy
7 #endif
8
petscstrncpy_(char * s1,char * s2,int * n,PetscErrorCode * ierr,PETSC_FORTRAN_CHARLEN_T len1,PETSC_FORTRAN_CHARLEN_T len2)9 PETSC_EXTERN void petscstrncpy_(char *s1, char *s2, int *n, PetscErrorCode *ierr, PETSC_FORTRAN_CHARLEN_T len1, PETSC_FORTRAN_CHARLEN_T len2)
10 {
11 char *t1, *t2;
12 PETSC_FORTRAN_CHARLEN_T m;
13
14 t1 = s1;
15 t2 = s2;
16 m = (PETSC_FORTRAN_CHARLEN_T)*n;
17 if (len1 < m) m = len1;
18 if (len2 < m) m = len2;
19 *ierr = PetscStrncpy(t1, t2, m);
20 }
21