summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiguel Freitas <miguelfreitas@users.sourceforge.net>2003-12-06 16:10:01 +0000
committerMiguel Freitas <miguelfreitas@users.sourceforge.net>2003-12-06 16:10:01 +0000
commit1a94ed9db8e28082d9286df2d6c59c7dffb69c1e (patch)
tree561bf4e4d70e6f5e7e2e5e1c0e49fc04c954eb89
parent2fe4f41b1dde8ff8a47dff10cffbbcb9a4fd75d4 (diff)
downloadxine-lib-1a94ed9db8e28082d9286df2d6c59c7dffb69c1e.tar.gz
xine-lib-1a94ed9db8e28082d9286df2d6c59c7dffb69c1e.tar.bz2
fix mem overlap reported by valgrind
CVS patchset: 5852 CVS date: 2003/12/06 16:10:01
-rw-r--r--src/xine-utils/utils.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/xine-utils/utils.c b/src/xine-utils/utils.c
index bb8c2bee2..3e7ec7f6b 100644
--- a/src/xine-utils/utils.c
+++ b/src/xine-utils/utils.c
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: utils.c,v 1.20 2003/12/04 22:15:25 jstembridge Exp $
+ * $Id: utils.c,v 1.21 2003/12/06 16:10:01 miguelfreitas Exp $
*
*/
#define _POSIX_PTHREAD_SEMANTICS 1 /* for 5-arg getpwuid_r on solaris */
@@ -93,8 +93,10 @@ const char *xine_get_homedir(void) {
homedir[sizeof(homedir) - 1] = '\0';
}
} else {
- strncpy(homedir, pw->pw_dir, sizeof(homedir));
+ char *s = strdup(pw->pw_dir);
+ strncpy(homedir, s, sizeof(homedir));
homedir[sizeof(homedir) - 1] = '\0';
+ free(s);
}
if(!homedir[0]) {