diff --git a/coregrind/m_commandline.c b/coregrind/m_commandline.c index 3a4c27142..7ac496901 100644 --- a/coregrind/m_commandline.c +++ b/coregrind/m_commandline.c @@ -59,10 +59,13 @@ static HChar* read_dot_valgrindrc ( const HChar* dir ) SysRes fd; struct vg_stat stat_buf; HChar* f_clo = NULL; - HChar filename[VKI_PATH_MAX]; + const HChar dot_valgrindrc[] = ".valgrindrc"; + + vg_assert(dir != NULL); + + HChar filename[VG_(strlen)(dir) + 1 + VG_(strlen)(dot_valgrindrc) + 1]; + VG_(sprintf)(filename, "%s/%s", dir, dot_valgrindrc); - VG_(snprintf)(filename, VKI_PATH_MAX, "%s/.valgrindrc", - ( NULL == dir ? "" : dir ) ); fd = VG_(open)(filename, 0, VKI_S_IRUSR); if ( !sr_isError(fd) ) { Int res = VG_(fstat)( sr_Res(fd), &stat_buf );