# HG changeset patch # User jwe # Date 1165341912 0 # Node ID 1ec9de3cd12cde07bfcc3a5ff8b4895e232a9eaa # Parent 7f7f612eac06cc879d0bb0e815ed845107b7ad25 [project @ 2006-12-05 18:05:11 by jwe] diff -r 7f7f612eac06 -r 1ec9de3cd12c src/ChangeLog --- a/src/ChangeLog Tue Dec 05 14:24:48 2006 +0000 +++ b/src/ChangeLog Tue Dec 05 18:05:12 2006 +0000 @@ -1,3 +1,13 @@ +2006-12-05 John W. Eaton + + * pt-mat.cc (tm_row_const::empty): New function. + (tm_const::init): Don't append anything if tmp tm_row_const object + is empty. + (tree_matrix::rvalue): Default return value is Matrix(). + Don't do anything if tmp tm_const object is empty. + + * dirfns.cc (Fmkdir): Fix thinko in previous change. + 2006-12-05 Paul Kienzle * DLD-FUNCTIONS/rand.cc: Test for Poisson generator with lambda > 1e8. diff -r 7f7f612eac06 -r 1ec9de3cd12c src/dirfns.cc --- a/src/dirfns.cc Tue Dec 05 14:24:48 2006 +0000 +++ b/src/dirfns.cc Tue Dec 05 18:05:12 2006 +0000 @@ -237,7 +237,7 @@ else dirname = parent + file_ops::dir_sep_char + dir; } - else + else if (nargin == 1) { dirname = args(0).string_value (); @@ -253,7 +253,7 @@ std::string msg; int status = file_ops::mkdir (file_ops::tilde_expand (dirname), - 0777, msg); + 0777, msg); if (status < 0) { diff -r 7f7f612eac06 -r 1ec9de3cd12c src/pt-mat.cc --- a/src/pt-mat.cc Tue Dec 05 14:24:48 2006 +0000 +++ b/src/pt-mat.cc Tue Dec 05 18:05:12 2006 +0000 @@ -156,6 +156,8 @@ octave_idx_type rows (void) { return rep->dv(0); } octave_idx_type cols (void) { return rep->dv(1); } + bool empty (void) const { return rep->empty (); } + dim_vector dims (void) { return rep->dv; } bool all_strings_p (void) const { return rep->all_str; } @@ -511,7 +513,7 @@ tm_row_const tmp (*elt); - if (tmp) + if (tmp && ! tmp.empty ()) { if (all_str && ! tmp.all_strings_p ()) all_str = false; @@ -758,7 +760,7 @@ octave_value tree_matrix::rvalue (void) { - octave_value retval; + octave_value retval = Matrix (); bool all_strings_p = false; bool all_sq_strings_p = false; @@ -771,7 +773,7 @@ tm_const tmp (*this); - if (tmp) + if (tmp && ! tmp.empty ()) { dim_vector dv = tmp.dims (); all_strings_p = tmp.all_strings_p (); diff -r 7f7f612eac06 -r 1ec9de3cd12c test/test_system.m --- a/test/test_system.m Tue Dec 05 14:24:48 2006 +0000 +++ b/test/test_system.m Tue Dec 05 18:05:12 2006 +0000 @@ -239,7 +239,7 @@ %!error mkdir (); %% test/octave.test/system/mkdir-2.m -%!error mkdir ("foo", 1); +%!error mkdir ("foo", 1, 2); %% test/octave.test/system/rmdir-1.m %!error rmdir ();