From bug-octave-request at bevo dot che dot wisc dot edu Wed Feb 4 13:08:27 2004 Subject: Re: str2mat causes segmetation fault From: Dirk Eddelbuettel To: Johan Silen Cc: bug-octave at bevo dot che dot wisc dot edu Date: Wed, 4 Feb 2004 13:07:22 -0600 On Tue, Feb 03, 2004 at 05:39:44AM -0600, Johan Silen wrote: > To: bug-octave at bevo dot che dot wisc dot edu > Cc: silen > Subject: str2mat causes segmetation fault > > Bug report for Octave 2.1.53-2 configured for i386-pc-linux-gnu > > Description: > ----------- > Simply call x=str2mat("xx") causes segmetation fault > > Repeat-By: > --------- > str2mat("xx") It also happens with the most current 2.1.53-3. > Fix: > --- > Seems that the included find.oct called inside str2mat.m > is responsible for the crash. Oct-files should be regenerated > for each packed debian distribution. What makes you think they are not? Thanks for the bug report. Help and patches welcome. Dirk > > Configuration (please do not edit this section): > ----------------------------------------------- > > uname output: Linux yes.fmi.fi 2.4.23-1-586tsc #2 Sun Nov 30 19:46:45 EST 2003 i686 GNU/Linux > configure opts: '--prefix=/usr' '--datadir=/usr/share' '--libdir=/usr/lib' '--libexecdir=/usr/lib' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--with-blas=/usr/lib/libblas2.so' '--with-lapack=/usr/lib/liblapack2.so' '--with-hdf5' '--with-fftw' '--with-g77=/usr/bin/g77' '--enable-shared' '--enable-rpath' '--disable-static' '--build' 'i386-linux' 'CC=/usr/bin/gcc' 'CXX=/usr/bin/g++' 'F77=/usr/bin/g77' 'build_alias=i386-linux' > Fortran compiler: /usr/bin/g77 > FFLAGS: -O2 > F2C: > F2CFLAGS: > FLIBS: -L/usr/lib/gcc-lib/i486-linux/3.3.3 -L/usr/lib/gcc-lib/i486-linux/3.3.3/../../.. -lhdf5 -lz -lfrtbegin -lg2c -lm -lgcc_s > CPPFLAGS: > INCFLAGS: -I. -I. -I./liboctave -I./src -I./libcruft/misc -I./glob -I./glob > C compiler: /usr/bin/gcc, version 3.3.3 20040125 (prerelease) (Debian) > CFLAGS: -O2 > CPICFLAG: -fPIC > C++ compiler: /usr/bin/g++, version 3.3.3 > CXXFLAGS: -O2 > CXXPICFLAG: -fPIC > LD_CXX: /usr/bin/g++ > LDFLAGS: -s > LIBFLAGS: -L. > RLD_FLAG: -Wl,-rpath -Wl,/usr/lib/octave-2.1.53 > BLAS_LIBS: /usr/lib/liblapack2.so /usr/lib/libblas2.so > FFTW_LIBS: -lfftw > LIBS: -lreadline -lncurses -ldl -lhdf5 -lz -lm > LEXLIB: > LIBPLPLOT: > LIBDLFCN: > LIBGLOB: ./glob/glob.o ./glob/fnmatch.o > SED: /bin/sed > DEFS: > > -DPACKAGE_NAME="" -DPACKAGE_TARNAME="" -DPACKAGE_VERSION="" > -DPACKAGE_STRING="" -DPACKAGE_BUGREPORT="" -DOCTAVE_SOURCE=1 > -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 > -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 > -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DSEPCHAR=1 > -DSEPCHAR_STR=":" -D__NO_MATH_INLINES=1 -DCXX_NEW_FRIEND_TEMPLATE_DECL=1 > -DCXX_ISO_COMPLIANT_LIBRARY=1 -DCXX_ABI=gnu_v3 -DHAVE_LIBM=1 > -DHAVE_HDF5_H=1 -DHAVE_HDF5=1 -DHAVE_H5GGET_NUM_OBJS=1 -DHAVE_FFTW_H=1 > -DHAVE_FFTW=1 -DF77_FUNC(name,NAME)=name ## _ -DF77_FUNC_(name,NAME)=name > ## __ -DHAVE_BLAS=1 -DHAVE_GETHOSTNAME=1 -DHAVE_GETPWNAM=1 -DHAVE_DEV_T=1 > -DHAVE_INO_T=1 -DHAVE_NLINK_T=1 -DHAVE_NLINK_T=1 -DHAVE_LONG_LONG_INT=1 > -DHAVE_UNSIGNED_LONG_LONG_INT=1 -DHAVE_SIGSET_T=1 -DHAVE_SIG_ATOMIC_T=1 > -DSIZEOF_SHORT=2 -DSIZEOF_INT=4 -DSIZEOF_LONG=4 -DSIZEOF_LONG_LONG=8 > -DHAVE_ALLOCA_H=1 -DHAVE_ALLOCA=1 -DNPOS=std::string::npos > -DHAVE_PLACEMENT_DELETE=1 -DHAVE_DYNAMIC_AUTO_ARRAYS=1 -DSTDC_HEADERS=1 > -DHAVE_DIRENT_H=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_SYS_WAIT_H=1 > -DHAVE_ASSERT_H=1 -DHAVE_CURSES_H=1 -DHAVE_DLFCN_H=1 -DHAVE_FCNTL_H=1 > -DHAVE_FLOAT_H=1 -DHAVE_GRP_H=1 -DHAVE_LIMITS_H=1 -DHAVE_MEMORY_H=1 > -DHAVE_NCURSES_H=1 -DHAVE_POLL_H=1 -DHAVE_PWD_H=1 -DHAVE_STDLIB_H=1 > -DHAVE_STRING_H=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_SYS_PARAM_H=1 > -DHAVE_SYS_POLL_H=1 -DHAVE_SYS_RESOURCE_H=1 -DHAVE_SYS_SELECT_H=1 > -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_SYS_TIMES_H=1 > -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_UTSNAME_H=1 -DHAVE_TERMCAP_H=1 > -DHAVE_UNISTD_H=1 -DHAVE_SSTREAM=1 -DHAVE_TERMIO_H=1 -DHAVE_SGTTY_H=1 > -DHAVE_GLOB_H=1 -DHAVE_FNMATCH_H=1 -DHAVE_ATEXIT=1 -DHAVE_BASENAME=1 > -DHAVE_BCOPY=1 -DHAVE_BZERO=1 -DHAVE_DUP2=1 -DHAVE_ENDGRENT=1 > -DHAVE_ENDPWENT=1 -DHAVE_EXECVP=1 -DHAVE_FCNTL=1 -DHAVE_FORK=1 > -DHAVE_GETCWD=1 -DHAVE_GETEGID=1 -DHAVE_GETEUID=1 -DHAVE_GETGID=1 > -DHAVE_GETGRENT=1 -DHAVE_GETGRGID=1 -DHAVE_GETGRNAM=1 -DHAVE_GETPGRP=1 > -DHAVE_GETPID=1 -DHAVE_GETPPID=1 -DHAVE_GETPWENT=1 -DHAVE_GETPWUID=1 > -DHAVE_GETTIMEOFDAY=1 -DHAVE_GETUID=1 -DHAVE_GETWD=1 -DHAVE_KILL=1 > -DHAVE_LINK=1 -DHAVE_LOCALTIME_R=1 -DHAVE_LSTAT=1 -DHAVE_MEMMOVE=1 > -DHAVE_MKDIR=1 -DHAVE_MKFIFO=1 -DHAVE_MKSTEMP=1 -DHAVE_ON_EXIT=1 > -DHAVE_PIPE=1 -DHAVE_POLL=1 -DHAVE_PUTENV=1 -DHAVE_RAISE=1 > -DHAVE_READLINK=1 -DHAVE_RENAME=1 -DHAVE_RINDEX=1 -DHAVE_RMDIR=1 > -DHAVE_SELECT=1 -DHAVE_SETGRENT=1 -DHAVE_SETPWENT=1 -DHAVE_SETVBUF=1 > -DHAVE_SIGACTION=1 -DHAVE_SIGLONGJMP=1 -DHAVE_SIGPENDING=1 > -DHAVE_SIGPROCMASK=1 -DHAVE_SIGSUSPEND=1 -DHAVE_STAT=1 -DHAVE_STRCASECMP=1 > -DHAVE_STRDUP=1 -DHAVE_STRERROR=1 -DHAVE_STRFTIME=1 -DHAVE_STRNCASECMP=1 > -DHAVE_STRPTIME=1 -DHAVE_SYMLINK=1 -DHAVE_TEMPNAM=1 -DHAVE_UMASK=1 > -DHAVE_UNLINK=1 -DHAVE_USLEEP=1 -DHAVE_VFPRINTF=1 -DHAVE_VSPRINTF=1 > -DHAVE_VSNPRINTF=1 -DHAVE_WAITPID=1 -DHAVE_LIBDL=1 -DHAVE_DLOPEN=1 > -DHAVE_DLSYM=1 -DHAVE_DLERROR=1 -DHAVE_DLCLOSE=1 -DHAVE_DLOPEN_API=1 > -DENABLE_DYNAMIC_LINKING=1 -DHAVE_TIMEVAL=1 -DHAVE_FINITE=1 -DHAVE_ISNAN=1 > -DHAVE_ISINF=1 -DHAVE_COPYSIGN=1 -DHAVE_ACOSH=1 -DHAVE_ASINH=1 > -DHAVE_ATANH=1 -DHAVE_ERF=1 -DHAVE_ERFC=1 -DHAVE_STRUCT_STAT_ST_BLKSIZE=1 > -DHAVE_STRUCT_STAT_ST_BLOCKS=1 -DHAVE_STRUCT_STAT_ST_RDEV=1 > -DHAVE_STRUCT_TM_TM_ZONE=1 -DHAVE_TM_ZONE=1 -DUSE_READLINE=1 > -DEXCEPTION_IN_MATH=1 -DRETSIGTYPE=void -DSYS_SIGLIST_DECLARED=1 > -DHAVE_SYS_SIGLIST=1 -DHAVE_POSIX_SIGNALS=1 -DHAVE_GETRUSAGE=1 > -DHAVE_TIMES=1 -DYYTEXT_POINTER=1 -DGNUPLOT_BINARY="gnuplot" > -DGNUPLOT_HAS_FRAMES=1 > > User-preferences (please do not edit this section): > -------------------------------------------------- > > DEFAULT_EXEC_PATH = "/usr/lib/octave/2.1.53/site/exec/i386-pc-linux-gnu:/usr/lib/octave/site/exec/i386-pc-linux-gnu:/usr/lib/octave/2.1.53/exec/i386-pc-linux-gnu:/usr/bin" > DEFAULT_LOADPATH = ".:/usr/lib/octave/2.1.53/site/oct/i386-pc-linux-gnu//:/usr/lib/octave/site/oct/api-v4/i386-pc-linux-gnu//:/usr/lib/octave/site/oct/i386-pc-linux-gnu//:/usr/share/octave/2.1.53/site/m//:/usr/share/octave/site/api-v4/m//:/usr/share/octave/site/m//:/usr/lib/octave/2.1.53/oct/i386-pc-linux-gnu//:/usr/share/octave/2.1.53/m//" > EDITOR = "jed" > EXEC_PATH = "/usr/lib/octave/2.1.50/site/exec/i386-pc-linux-gnu::/usr/bin:/bin:/usr/bin/X11:/usr/games:/usr/local/bin:/home/silen/Office/bin:.:/home/silen/bin:/usr/lib/mupad/share/bin:/proj/COSIMA/cosima/bin:/proj/COSIMA/cosima/egse:." > IMAGEPATH = ".:/usr/share/octave/2.1.53/imagelib//" > INFO_FILE = "/usr/share/info/octave.info" > INFO_PROGRAM = "info" > LOADPATH = "/usr/lib/octave/2.1.51/site/oct/i386-pc-linux-gnu/octave-forge:/usr/share/octave/2.1.51/site/m/octave-forge//::/usr/local/share/octave/site-m//::/usr/lib/octave/2.1.51/oct/i386-pc-linux-gnu/:/home/silen/octave//:/usr/share/doc/octave-plplot/examples/octave//" > PAGER = "less -e -P'-- less ?pB(%pB\\%):--. (f)orward, (b)ack, (q)uit$'" > PS1 = "\\s:\\#> " > PS2 = "> " > PS4 = "+ " > automatic_replot = 1 > beep_on_error = 0 > completion_append_char = " " > crash_dumps_octave_core = 1 > default_save_format = "ascii" > echo_executing_commands = 0 > fixed_point_format = 0 > gnuplot_binary = "gnuplot" > gnuplot_command_end = "\n" > gnuplot_command_plot = "pl" > gnuplot_command_replot = "rep" > gnuplot_command_splot = "sp" > gnuplot_command_title = "t" > gnuplot_command_using = "u" > gnuplot_command_with = "w" > gnuplot_has_frames = 1 > history_file = "/home/silen/.octave_hist" > history_size = 1024 > ignore_function_time_stamp = "system" > max_recursion_depth = 256 > output_max_field_width = 10 > output_precision = 5 > page_output_immediately = 1 > page_screen_output = 0 > print_answer_id_name = 1 > print_empty_dimensions = 1 > print_rhs_assign_val = 0 > # return_last_computed_value = > save_precision = 15 > saving_history = 1 > sighup_dumps_octave_core = 1 > sigterm_dumps_octave_core = 1 > silent_functions = 0 > split_long_rows = 1 > string_fill_char = " " > struct_levels_to_print = 2 > suppress_verbose_help_message = 0 > warn_assign_as_truth_value = 1 > warn_divide_by_zero = 1 > warn_empty_list_elements = 0 > warn_fortran_indexing = 0 > warn_function_name_clash = 1 > warn_future_time_stamp = 1 > warn_imag_to_real = 0 > warn_missing_semicolon = 0 > warn_neg_dim_as_zero = 0 > warn_num_to_str = 1 > warn_resize_on_range_error = 0 > warn_separator_insert = 0 > warn_single_quote_string = 0 > warn_str_to_num = 0 > warn_undefined_return_values = 1 > warn_variable_switch_label = 0 > > > > ------------------------------------------------------------- > Octave is freely available under the terms of the GNU GPL. > > Octave's home on the web: http://www.octave.org > How to fund new projects: http://www.octave.org/funding.html > Subscription information: http://www.octave.org/archive.html > ------------------------------------------------------------- > > -- The relationship between the computed price and reality is as yet unknown. -- From the pac(8) manual page ------------------------------------------------------------- Octave is freely available under the terms of the GNU GPL. Octave's home on the web: http://www.octave.org How to fund new projects: http://www.octave.org/funding.html Subscription information: http://www.octave.org/archive.html -------------------------------------------------------------