1: #include <petsc/private/fortranimpl.h> 3: #if defined(PETSC_HAVE_FORTRAN_CAPS) 4: #define petscstrncpy_ PETSCSTRNCPY 5: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) 6: #define petscstrncpy_ petscstrncpy 7: #endif 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; 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: }