xref: /petsc/src/sys/utils/ftn-custom/zstrf.c (revision 8cc058d9cd56c1ccb3be12a47760ddfc446aaffc)
1b45d2f2cSJed Brown #include <petsc-private/fortranimpl.h>
255fcb7f5SSatish Balay 
355fcb7f5SSatish Balay #if defined(PETSC_HAVE_FORTRAN_CAPS)
455fcb7f5SSatish Balay #define petscstrncpy_              PETSCSTRNCPY
555fcb7f5SSatish Balay #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE)
655fcb7f5SSatish Balay #define petscstrncpy_              petscstrncpy
755fcb7f5SSatish Balay #endif
855fcb7f5SSatish Balay 
9*8cc058d9SJed Brown PETSC_EXTERN void PETSC_STDCALL petscstrncpy_(CHAR s1 PETSC_MIXED_LEN(len1),CHAR s2 PETSC_MIXED_LEN(len2),int *n,
1055fcb7f5SSatish Balay                                  PetscErrorCode *ierr PETSC_END_LEN(len1) PETSC_END_LEN(len2))
1155fcb7f5SSatish Balay {
1255fcb7f5SSatish Balay   char *t1,*t2;
1355fcb7f5SSatish Balay   int  m;
1455fcb7f5SSatish Balay 
1555fcb7f5SSatish Balay   t1    = s1;
1655fcb7f5SSatish Balay   t2    = s2;
1755fcb7f5SSatish Balay   m     = *n; if (len1 < m) m = len1;if (len2 < m) m = len2;
1855fcb7f5SSatish Balay   *ierr = PetscStrncpy(t1,t2,m);
1955fcb7f5SSatish Balay }
20