Welcome to mirror list, hosted at ThFree Co, Russian Federation.

ChangeLog « System.IO « corlib « class « mcs - github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 6818c37ad827327f4f7fc61a15dcaa2f6b595409 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
2004-06-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Directory.cs: implemented GetLogicalDrives.

2004-06-24  Lluis Sanchez Gual  <lluis@novell.com>

	* StreamReader.cs: In DiscardBufferedData(), reset the mayBlock flag.

2004-06-21  Atsushi Enomoto  <atsushi@ximian.com>

	* FileStream.cs :
	  .ctor() should block write access when created with FileAccess.Write.

2004-06-21  Atsushi Enomoto  <atsushi@ximian.com>

	* FileStream.cs : Check buffer size before creating file.
	* StreamReader.cs : Check encoding!=null before creating file.
	* File.cs,
	  MonoIO.cs : Convert DateTime to FileTime after checking
	  file IO sharing violation (it just fixes the type of exception).

2004-06-15  Gert Driesen <drieseng@users.sourceforge.net>

	* MemoryStream.cs: added TODO for serialization
	* StringWriter.cs: added TODO for serialization

2004-06-15  Gert Driesen <drieseng@users.sourceforge.net>

	* TextWriter.cs: fixed CoreNewLine to return char[]

2004-06-14  Dick Porter  <dick@ximian.com>

	* Directory.cs:
	* File.cs: Catch PATH_NOT_FOUND errors in Exists() too.  Fixes bug
	59354.

2004-06-09  Duncan Mak  <duncan@ximian.com>

	* BufferedStream.cs (SetLength): Add checks and throw the
	appropriate Exceptions here instead.

	* FileStream.cs (SetLength): Revert part of my last patch, we're
	throwing ObjectDisposedException instead of IOException again.

2004-06-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* FileStream.cs: re-enabled ignoring broken pipe errors when reading.
	Fixes bug #59639.

2004-06-08  Duncan Mak  <duncan@ximian.com>

	* Directory.cs (IsRootDirectory): New helper method for
	determining if a path is the root directory. Handles both Unix as
	well as Windows.
	(GetParent): Use IsRootDirectory for the check.

2004-06-08  Duncan Mak  <duncan@ximian.com>

	* File.cs: Fix line endings, took out ^Ms.

	* Directory.cs (GetParent): Return null if the specified path is
	the root directory.

	* StreamReader.cs (StreamReader):
	(Initialize): Add a check that buffer_size must not be less than
	or equal to zero.

2004-06-07  Duncan Mak  <duncan@ximian.com>

	* FileStream.cs (SetLength): The other exceptions have precendence
	over ObjectDisposedException, which is not one of the exceptions
	listed in the documentation). Also, instead of throwing an
	ObjectDisposedException, throw an IOException.

2004-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* BufferedStream.cs: fixed typo that prevented Read() from working.
	This went out with beta 2. Closes bug #59534.

2004-05-31  Atsushi Enomoto  <atsushi@ximian.com>

	* Directory.cs, File.cs : Fixed Exists() that raised 
	  DirectoryNotFoundException. Quick fix for bug #59354.

2004-05-30  Sebastien Pouliot  <sebastien@ximian.com>

	* BinaryReader.cs: Added missing disposed check for most methods. 
	Reordered some exceptions to match MS implementation. 
	* BufferedStream.cs: Fixed Seek logic (check for CanSeek and dispose).
	SetLength must also reset Position and check for dispose.
	* FileStream.cs: Added missing check for invalid SeekOrigin. Added
	missing validations.

2004-05-27  Dick Porter  <dick@ximian.com>

	* FileSystemInfo.cs: Take out the error checking in Refresh(), it
	broke other stuff
	
2004-05-27  Dick Porter  <dick@ximian.com>

	* MonoIO.cs: Define icalls for Lock() and Unlock()
	
	* FileStream.cs: Implement Lock() and Unlock().  Also improve IO
	error reporting.

	* FileSystemInfo.cs:
	* File.cs:
	* Directory.cs: Improve IO error reporting

2004-05-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* FileStream.cs: delay seeking to the end when FileMode.Append is
	specified until after buffer initialization. Fixes bug #59151.

2004-05-26  Sebastien Pouliot  <sebastien@ximian.com>

	* BufferedStream.cs: Added globalization and fixed exceptions and 
	possible integer overflow.
	* FileStream.cs: Fixed possible integer overflow.
	* MemoryStream.cs: Fixed possible integer overflow.
	* StringReader.cs: Fixed possible integer overflow.
	* TextWriter.cs: Fixed possible integer	overflow.

2004-05-26  Atsushi Enomoto  <atsushi@ximian.com>

	* FileInfo.cs,
	  DirectoryInfo.cs : ToString() should return constructor arg as is.
	  This fixes bug #58804.

2004-05-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Directory.cs: ERROR_FILE_NOT_FOUND in FindFirstFile means there are
	no files, but the directory was found. Fixes bug #58875.

2004-05-24  Duncan Mak  <duncan@ximian.com>

	* StreamWriter.cs (Close): Remember to set the 'closed' flag.

	* DirectoryInfo.cs: 
	* FileInfo.cs: Reformat the whole file to use DOS line endings.
	(MoveTo): Return if the destination of Move is the
	same as the file's current location.

2004-05-24  Sebastien Pouliot  <sebastien@ximian.com>

	* MemoryStream.cs: Fixed exception reporting to match MS Fx. Fixed the
	condition to allow zeroization of existing data when we shrink the 
	stream.
	* StreamReader.cs: Add checks for null encoding. Fixed possible integer
	overflow and ArgumentNullException in Read.
	* StreamWriter.cs: Add dispose check to Write(char) and Write(char[]),
	AutoFlush. Fixed possible integer overflow in Write(char[],int,int).
	* StringWriter.cs: Fixed possible integer overflow in Write. Changed
	spaces for tabs.

2004-05-22  Duncan Mak  <duncan@ximian.com>

	* Directory.cs: Reformat the whole file to use Unix line endings
	for consistency.
	(GetFileSystemEntries): If pattern is String.Empty, always
	return an empty string array. Throw the ArgumentException if path
	is an empty string (determined using the new helper method)
	(IsEmptyString): Returns true on an empty string or a string with
	only whitespace characters.

	* Path.cs (GetPathRoot): Throw an ArgumentException if the path
	argument is String.Empty.

2004-05-20  Jackson Harper  <jackson@ximian.com>

	* DirectoryInfo.cs: Create subdirectories correctly if more then
	one is supplied.
	
2004-05-16  Atsushi Enomoto  <atsushi@ximian.com>

	* DirectoryInfo.cs: Fixed ToString() as well as FileInfo.

2004-05-16  Atsushi Enomoto  <atsushi@ximian.com>

	* FileInfo.cs: ToString() returns not full path but just the file name.

2004-05-14  Marek Safar  <marek.safar@seznam.cz>

	* TextWriter.cs: Removed useless [CLSCompliant (false)]

2004-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Directory.cs: use the real wildcard for file names as it is supported
	now in io-layer. SearhPattern is not needed now.

2004-04-30 Ben Maurer  <bmaurer@users.sourceforge.net>

	* BinaryWriter.cs, Stream.cs: ensure we have beforefieldinit.

2004-04-29 Ben Maurer  <bmaurer@users.sourceforge.net>

	* Path.cs: readonlyificate.

2004-04-29 Ben Maurer  <bmaurer@users.sourceforge.net>

	* FileStream.cs: constify.

2004-04-27  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* SearchPattern.cs: Call invariant String.ToLower

2004-04-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* FileStreamAsyncResult.cs: invoke the callback if set as completed
	before the asynchronous stuff jumps in.

2004-04-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* FileStream.cs: only pass the async flag set to true when opening the
	file and AIO is supported by the underlying system. Fixes bug #56883.

2004-04-12  Gert Driesen (drieseng@users.sourceforge.net)

	* FileSystemInfo.cs: Implemented ISerializable, corrected COM 
	visibility of UTC properties

2004-04-01  Lluis Sanchez Gual  <lluis@ximian.com>

	* BufferedStream.cs: On Position change, do not reset the buffer if the
	new position is in the limits of the buffer. This fixes #49403.

2003-04-03  Atsushi Enomoto <atsushi@ximian.com>

	* Path.cs : ChangeExtension() does not remove dot(.) when extension is
	  an empty string.

2004-04-01  Lluis Sanchez Gual  <lluis@ximian.com>

	* FileSystemInfo.cs: Added InternalRefresh, a virtual method that derived
	  classes can override to perform class specific refreshing.
	* FileInfo.cs: Refresh existence flag when Refresh is called.
	* TextWriter.cs: Applied patch by Benjamin Jemlich for bug #52512.
	  The method Write(char) should do nothing by default.

2004-03-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* BinaryReader.cs: don't modify the underlying stream in Peek(). Fixes
	bug #51741. Patch by Nick Vaughan.

2004-03-25  Lluis Sanchez Gual  <lluis@ximian.com>

	* FileStream.cs: ReadByte(): when buffering is disabled, read the byte
	with a direct call to ReadData. In InitBuffer(), if buffering is
	disabled, create a buffer of one byte, to be used in ReadByte.  This
	fixes bug #52361.

2004-03-25  Lluis Sanchez Gual  <lluis@ximian.com>

	* Path.cs: In GetDirectoryName, fixed check for volumeSeparator. This
	  fixes bug #53892.

2004-03-24  Lluis Sanchez Gual  <lluis@ximian.com>

	* File.cs: In Move, throw IOException instead of ArgumentException if 
	  destination is a directory.
	* MonoIO.cs: In ExistsDirectory, return ERROR_PATH_NOT_FOUND instead of
	ERROR_FILE_NOT_FOUND, since we are looking for a directory, not a file.
	
2004-03-15  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* StreamWriter.cs: Removed unneeded function

2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* FileStream.cs: added support for asynchronous I/O without using the
	OS native libraries if available.

	* FileStreamAsyncResult.cs: IAsyncResult for asynch. I/O.

	* MonoIO.cs: added BeginRead/Write, GetSupportsAsync. Open has now a
	new parameter to tell ifthe file will be used for asynch operations.

	* Stream.cs: BeginRead/Write do not use delegates. They just are
	actually synchronous.

	* StreamAsyncResult.cs: IAsyncResult for Stream.

2004-03-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Directory.cs: check if the error returned in Exists is different
	from 'path not found' and throw the appropiate exception in that case.
	See #55160.

2004-03-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MonoIO.cs: added case for ERROR_FILENAME_EXCED_RANGE.

2004-02-25  Jackson Harper <jackson@ximian.com>

	* File.cs: Report the filename when deleting a file fails. Patch
	by Gert Driesen. Fixes bug #54855.
	
2004-02-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* FileStream.cs: remove dangling ^Ms.

2004-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* FileStream.cs: (.ctor) Path.DirectoryName can be empty and make
	Path.GetFullPath crash. Fixed it.

	* MonoIO.cs: fixed typo.

2004-02-13  Jackson Harper  <jackson@ximian.com>

	* FileStream.cs: Throw some more exceptions for invalid
	params. Fixes some unit test failures.
	* BufferedStream.cs: If the stream is closed (can't read from it
	or write to it) throw an ObjectDisposedException.
	
Tue Jan 20 23:10:22 CET 2004 Paolo Molaro <lupus@ximian.com>

	* StreamWriter.cs, TextWriter.cs: comply with the documented
	behaviour and use a decode buffer to improve performance.

2004-01-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Path.cs: now Path.GetFullPath ("/") returns "/" instead of "".

2004-01-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Path.cs: add the trailing directory separator only for volumes.
	Fixes bug #53035.

2004-01-19  Zoltan Varga  <vargaz@freemail.hu>

	* IntPtrStream.cs: Fix build bustage.
	
	* IntPtrStream.cs: Add a 'Closed' event. Also throw exceptions after
	the stream is closed.

2004-01-18 Ben Maurer  <bmaurer@users.sourceforge.net>

	* FileStream.cs: Locking from bug #32344 removed. This is not
	necessary because the correct fix was actually in the console.
	This fixes bug #53026. Miguel de Icaza reviewed/approved this
	patch.

2004-01-14  Zoltan Varga  <vargaz@freemail.hu>

	* FileStream.cs (.ctor): Avoid allocating a large buffer when reading
	from small files.

2004-01-10  Atsushi Enomoto <atsushi@ximian.com>

	* Path.cs : GetDirectoryName ("c:\readme.txt") should return "c:\"
	  instead of "c:" . This fixed bug #52735.

2004-01-04  Nick Drochak <ndrochak@gol.com>

	* Path.cs: Remove defined but unused variable, and also got rid of
	some unreachable code.  Eliminates some build warnings.

2003-12-28 Ben Maurer  <bmaurer@users.sourceforge.net>

	* BinaryWriter.cs: use one encoding buffer for writing
	strings rather than allocting one/string. HUGE perf
	boost when writing many strings.

2003-12-25  Atsushi Enomoto <atsushi@ximian.com>

	* Path.cs : Fixed GetFullPath() (and CanonicalizePath()), 
	  HasExtension(), GetPathRoot() and IsPathRooted() to fit with tests.

2003-12-22  Bernie Solomon  <bernard@ugsolutions.com>

	* FileStream.cs: (.ctor) do not set handle
	in object until after it is validated via
	GetFileType so finalizer doesn't see bad handles and
	initialize this.handle to InvalidHandle

2003-12-19  Bernie Solomon  <bernard@ugsolutions.com>

	* MonoIO.cs: SetFileTime() Failed Open returns InvalidHandle
	not Zero

2003-12-17  Atsushi Enomoto <atsushi@ximian.com>

	* Directory.cs : SetCurrentDirectory() should raise errors for
	  some kind of arguments.

2003-12-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Path.cs: GetTempPath () ends with DirectorySeparatorChar. Fixes bug
	#52056.

2003-12-06  Ravindra  <rkumar@novell.com>
	*MonoIO.cs: Added a new exception case. It is thrown 
	when a directory creation is attempted with a name that
	is already used by an existing file.

2003-11-28  Dick Porter  <dick@ximian.com>

	* Path.cs: Use the char form of LastIndexOf, so that the
	comparison is done with the Invariant culture.

2003-11-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Directory.cs: provide the path when getting the IOException.

2003-11-18  John Luke  <jluke@cfl.rr.com>

	* CheckArgument.cs:
	(PathLength): fix recursion found by JonK
	
2003-11-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Directory.cs:
	(GetCurrentDirectory):
	(SetCurrentDirectory): moved here from Environment. Handle error cases.

	* MonoIO.cs: add path to the default error message.

2003-11-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* StringReader.cs: fixed ReadLine for some cases where there are mixed
	'\r' and '\n'. Closes bug #51020.

2003-11-14 Ben Maurer  <bmaurer@users.sourceforge.net>

	* MemoryStream.cs (.ctor): We need to check if buffer is null
	before we get the Length of it.

2003-11-14  Miguel de Icaza  <miguel@ximian.com>

	* StreamReader.cs, TextReader, StreamReader (Read): Add [Out]

2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Directory.cs: allow directory names without wildcards in the pattern.
	Fixes bug #3 50969.

	* SearchPattern.cs: made InvalidChars and WildcardChars internal.

2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* FileStream.cs: use the argument name when throwing exception.

	* StreamReader.cs:
	* StringReader.cs:
	* TextReader.cs: added [In] attribute for the array in Read.

2003-11-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* DirectoryInfo.cs: fixed ToString. Closes bug #50842.

2003-11-12  Miguel de Icaza  <miguel@ximian.com>

	* Directory.cs: Adjust for missing PlatformID.Unix.

2003-10-28  Miguel de Icaza  <miguel@ximian.com>

	* StreamReader.cs: Add checks for disposed stream from bug report
	#48696 (Patrik Reali)

	* TextReader.cs (Read): Return the total number of bytes read, 
	patch from Patrik Realli.

2003-10-20  Miguel de Icaza  <miguel@ximian.com>

	* FileStream.cs public FileStream (string name, FileMode mode)
	constructor: If we pass FileMode.Append, we can not pass
	FileAccess.ReadWrite.  This fixes bug 44959

2003-09-26  Miguel de Icaza  <miguel@ximian.com>

	* BufferedStream.cs (Write): Use CanWrite in Write.  Patch from
	Francisco Figueiredo Jr.

2003-09-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* BinaryReader.cs: return the correct number of bytes read when there
	are some bytes from peeking.

2003-09-11  Lluis Sanchez Gual  <lluis@ximian.com>

	* BufferedStream.cs, FileStream.cs, MemoryStream.cs, Stream.cs:
	  Added [In,Out] attributes to Read method.

2003-08-05  Martin Baulig  <martin@ximian.com>

	* StreamReader.cs (DiscardBufferedData): Do the same like on the
	ms runtime: just discard the buffered data, but don't modify the
	BaseStream.Position.

2003-08-04  Martin Baulig  <martin@ximian.com>

	* StreamReader.cs (DiscardBufferedData): Implemented.

2003-07-29  Miguel de Icaza  <miguel@ximian.com>

	* IntPtrStream.cs (Read): Use correct offset here;  Change the
	code to use a byte* instead of an IntPtr to reduce the number of
	casts used. 

	(Read): Use Marshal.Copy instead of the now
	deprecated MemCopy.

	(IntPtrStream): New stream implementation, it maps to a region in
	memory.

2003-07-23  Duncan Mak  <duncan@ximian.com>

	* StreamReader.cs (Initialize): This method is not exposed in the
	API, mark as internal.

Fri Jul 18 14:42:42 CEST 2003 Paolo Molaro <lupus@ximian.com>

	* MonoIO.cs: 64bit fix from Bernie Solomon <bernard@ugsolutions.com>.

2003-07-16  Dick Porter  <dick@ximian.com>

	* FileInfo.cs: Update path info when a file is moved.  Patch by
	John Luke <jluke@cfl.rr.com>, fixes bug 44253.

2003-07-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MemoryStream.cs: fixed bug #46060. Thanks to Carlos Barcenilla.

2003-06-30  Zoltan Varga  <vargaz@freemail.hu>

	* FileStream.cs (Dispose): Flush the buffer even if we don't own the
	handle.
	* FileStream.cs: Add a new constructor parameter to turn off buffering.
	This is used by the Console.OpenStandard...() methods. Also fix
	argument checking in InitBuffer(), so a zero buffer size is also 
	rejected.

2003-06-27  Dietmar Maurer  <dietmar@ximian.com>

	* Stream.cs: use async.delegate invoke 

2003-06-18  Nick Drochak <ndrochak@gol.com>

	* FileSystemInfo.cs: Refresh cache when changeing file times.

2003-06-11  Zoltan Varga  <vargaz@freemail.hu>

	* FileStream.cs: Fix errors in previous checkins:
	(Write): Only take the shortcut route if the data is longer than the
	buffer length.
	(Write): Flush the buffer before writing out the new data
	(Write): Flush the buffer after writing out a segment since otherwise
	we will go into an infinite loop.
	(FlushBuffer): Remove my last change since it was clearly wrong.
	(Seek): Run FlushBuffer () after the in-buffer seek optimization.
	(Seek): Only use the in-buffer optimization if the buffer is not
	empty.
	(Length): Call FlushBuffer () since buffer data might change the size
	of the stream.

2003-06-09  Ville Palo <vi64pa@kolumbus.fi>

	* FileStream.cs:
	- removed unusefull bugfix (DirectoryNotFoundException)
	- Flush before seek.
	
2003-06-09  Ville Palo <vi64pa@kolumbus.fi>

	* FileStream.cs: Check buffer size before append/read -exceptios
	
2003-06-09  Ville Palo <vi64pa@kolumbus.fi>

	* FileStream.cs: Check DirectoryNotFound before FileNotFound.
	
2003-06-09  Ville Palo <vi64pa@kolumbus.fi>

	* FileStream.cs: Does not anymore flush while writing
	
2003-06-02  Nick Drochak <ndrochak@gol.com>

	* FileInfo.cs (MoveTo): Throw exceptions when dest exists, and check
	for null too.

2003-05-27  Lluis Sanchez Gual <lluis@ximian.com>

	* BinaryReader.cs: Stream don't need to be seekable to use PeekChar.

2003-05-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Path.cs: fixed bug #42631.

2003-05-22  Zoltan Varga  <vargaz@freemail.hu>

	* File.cs (Move): Allow moving of directories.
	Fix 'destination is a directory' test.

2003-05-21  Ben Maurer  <bmaurer@users.sourceforge.net>

	* StringWriter.cs: Fixed bug #43431: "StringWriter
	.ctor(CultureInfo) does not create a new StringBuilder ()"

2003-05-11  Zoltan Varga  <vargaz@freemail.hu>

	* FileStream.cs (FlushBuffer): After a flush, the buffer is
	advanced by buf_offset bytes, not buf_length bytes.

2003-05-16  Dick Porter  <dick@ximian.com>

	* MonoIO.cs: Implement GetTempPath

2003-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* DirectoryInfo.cs: fixed bug #42991.
	* Path.cs:
	(CanonicalizePath): store the value of the trimmed input string. Make it
	work with paths such as "/home/xxx/.".

2003-05-08  Ben Maurer <bmaurer@users.sourceforge.net>
	* Path.cs 
	(CanonicalizePath) Fixed bug #42631, which duplicated the
	root part of the path under Windows.

2003-05-08  Ville Palo <vi64pa@kolumbus.fi>

	* FileSystemInfo.cs: Added 1.1 properties LastAccessTimeUtc, 
	LastWriteTimeUtc and CreationTimeUtc
	
2003-05-07  Ben Maurer <bmaurer@users.sourceforge.net>
	* Path.cs 
	(GetPathRoot) Added support for UNC paths.
	(CanonicalizePath) Added optimizations per Miguel's requests.

2003-05-06  Ville Palo <vi64pa@kolumbus.fi>

	* BufferedStream.cs: 
	  - Removed unusefull code.
	  - Added ObjectDisposedException to Position
	  - Dont flush if stream is allready closed.
	  - Flush throws also ObjectDisposedException.
	* Directory.cs:
	  - GetFileSystemEtries: ArgumentNullException if pattern is null
	* DirectoryInfo.cs: Fixed little MoveTo () bug.
	* FileInfo.cs:
	  - Exists: If file does not exists when instance is created the
	  value of the Exists property does not change even if file is created
	  afterwards.
	  - Delete: If path is a directory UnauthorizedException is thrown.
	  - CopyTo: Now we can overwrite file if wanted.
	* Path.cs: 
	  - GetFullPath: Now throws exception when path is "   ".
	
2003-05-04  Ben Maurer <bmaurer@users.sourceforge.net>
	* Directory.cs (GetLogicalDrives) Marked as MonoTODO
	because we need to implement the method on Windows.
	* Path.cs 
	(CanonicalizePath) Added new function to get
	rid of . and .. in path names. Need to figure out what
	other functions should call this.
	(GetFullPath) Added call to the above function.
	
2003-05-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* StreamReader.cs:
	(.ctor): fixed parameters passed to FileNotFoundException.

2003-04-25  Dietmar Maurer  <dietmar@ximian.com>

	* BinaryReader.cs (Read): make sure the buffer is big enough (fix
	bug # 40702)

2003-04-24  Pedro Martinez Julia  <yoros@wanadoo.es>

	* BufferedStream.cs: Test if it's possible to seek in a Stream
	before access to Position. This prevents the exception thrown when
	the stream is System.Net.Sockets.NetworkStream.

2003-04-22  Ville Palo <vi64pa@kolumbus.fi>

	* Directory.cs: clean up --> performance improvment. Some exceptions
	are now checked in File.cs.
	* File.cs: Implemented Get/SetXXXTimeUtc () methods. Some bugfixes.
	
2003-04-21  Ville Palo <vi64pa@kolumbus.fi>

	* Directory.cs: lots of fixes. 
	  - Added GetXXXtimeUtc () (v1.1) methods.
	  - Added SetXXXtimeUtc () (v1.1) methods.	
	
2003-04-20  Igor Nosyryev <nosyryev@attbi.com>

	* StringReader.cs (Read): Increment nextChar by charsToRead
	instead of count, that will guarantee that the next time the
	method is called, it will return 0 on an empty string rather than
	throwing an exception

2003-04-19  Ville Palo <vi64pa@kolumbus.fi>

	* BufferedStream.cs: Some fixes, mostly throwing exceptions.
	* MemoryStream.cs: Changed the order of exception checking
	* StringReader.cs: little clean up
	
2003-04-14  Ville Palo <vi64pa@kolumbus.fi>

	* BinaryWriter.cs: Fixed decimal writing and lots of 
	ObjectDisposedExceptions added.
	
2003-04-13  Ville Palo <vi64pa@kolumbus.fi>

	* BinaryReader.cs: Fix to ReadDecimal() method.
	
2003-04-13  Ville Palo <vi64pa@kolumbus.fi>

	* StringReader.cs: Added some ObjectDisposedExceptions.
	* StringWriter.cs: Added some ObjectDisposedExceptions.
	* BinaryReader.cs: Added some ObjectDisposedExceptions.
	
2003-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* FileStream.cs: fixed the windows build. This is an mcs bug. I'll
	fill a bug report.

2003-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* FileStream.cs: fixed bug #40182 and made more unit test pass.

2003-04-11  Ville Palo <vi64pa@kolumbus.fi>

	* FileStream.cs: Added new methods Lock () and Unlock ()
	
2003-04-11  Ville Palo <vi64pa@kolumbus.fi>

	* StringReader.cs: Throws exceptions if constructor parameter is null.
	
2003-04-11  Ville Palo <vi64pa@kolumbus.fi>

	* StringWriter.cs: Now throws an exception if StringBuilder parameter
	is null
	
2003-04-05  Miguel de Icaza  <miguel@ximian.com>

	* TextWriter.cs: Implemented Synchronized method.

	* TextReader.cs: Implemented Synchronized method.

2003-04-04  Miguel de Icaza  <miguel@ximian.com>

	* FileStream.cs (Read, ReadByte, Seek): throw
	ObjectDisposedException if the handle has been released.
	
	(Read): Throw exceptions specified in the spec.

	(Read, Write, ReadSegment, WriteSegment): There is no requirement for any
	instance methods of FileStream to be thread safe, so remove all
	the calls to lock on the object

2003-03-31  Nick Drochak <ndrochak@gol.com>

	* Path.cs (GetDirectoryName): Throw proper execption when path is empty.

2003-03-20  Lluis Sanchez Gual <lluis@ideary.com>

	* FileNotFoundException.cs: fixed serialization bug.

2003-03-18  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>

	* StringWriter.cs : don't release internalString on Dispose().

2003-03-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* StreamReader.cs: fixed bug #39280.

2003-03-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Directory.cs: readded mkdir -p behavior. Thanks to kiwnix for
	pointing it out.

2003-03-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MemoryStream.cs: general fixes and reformatted. Passes all tests in
	the new MemoryStreamTest.

2003-03-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MemoryStream.cs: undo my bogus fix in ToArray. Allow GetBuffer and
	ToArray even after closing the stream.

2003-03-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Directory.cs:
	(Move): don't use File.Move.
	* DirectoryInfo.cs: fixed Name property.
	
	Fixes bug #37755.

2003-03-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* DirectoryInfo.cs: changed ToString to match MS behavior.
	* Path.cs: further fixes to GetDirectoryName to return null in the
	same cases that MS does.

	Fixes bug #38387.

2003-03-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Path.cs: fixed a couple of bugs reported in #35906.

2003-03-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Directory.cs: fixed bugs #38939 and #38940. No need for separate
	unix/windows/unc shares code paths.

2003-02-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* File.cs: fix by Elan Feingold <efeingold@mn.rr.com> for
	SetCreationTime, SetLastAccessTime and SetLastWriteTime.

2003-02-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MemoryStream.cs:
	(ToArray): return only the portion of the buffer that contains
	data, not the whole buffer. (note: this makes XmlDocument.Load work
	again with documents that have a <?xml without the 'encoding'
	attribute, which makes gtk-sharp generator work again).

2003-02-25  Nick Drochak <ndrochak@gol.com>

	* File.cs (GetCreationTime): Throw proper execption when path is not
	found.

Tue Feb 25 11:55:35 CET 2003 Paolo Molaro <lupus@ximian.com>

	* MemoryStream.cs: make it behave sanely when the stream is
	incrementally expanded.

2003-02-21  Dick Porter  <dick@ximian.com>

	* FileStream.cs: Use locks around buffer manipulations.  Fixes bug
	32344

2003-02-18  Dick Porter  <dick@ximian.com>

	* FileStream.cs: Make FileMode.Append work, and check for Seeking
	back over old data (undocumented ms behaviour, throws an exception
	if you try).  Fixes bug 35975.

2003-02-17  Dick Porter  <dick@ximian.com>

	* FileStream.cs: Don't close the handle if the stream doesn't own
	it.  Patch from Raymond Penners (raymond@dotsphinx.com), bug
	35623.

2003-02-14  Zoltan Varga  <vargaz@freemail.hu>

	* FileStream.cs (Write): flush after writing the last segment as well.

2003-02-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* StringReader.cs:
	(ReadLine): fixed the case when the string ends with a '\n'.

2003-02-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MemoryStream.cs: create the buffer of the specified capacity.

2003-01-31  Patrik Torstensson

	* MemoryStream.cs: use BlockCopyInternal instead of Array.Copy, this is
	the same way as MS does it (performance improvement)

2003-01-29  Zoltan Varga  <vargaz@freemail.hu>

	* Directory.cs (GetFileSystemEntries): moved error handling to the
	correct instance of GetFileSystemEntries so all callers can enjoy it.

2003-01-28  Zoltan Varga  <vargaz@freemail.hu>

	* File.cs: add error handling to Get...Time methods.

2003-01-26  Zoltan Varga  <vargaz@freemail.hu>

	* Directory.cs: fix GetParent so it actually works.

2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Path.cs: fixlet to ChangeExtension for the case when the path is
	empty.

2003-01-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* BufferedStream.cs: don't try to write a 0 sized array on when
	flushing the stream.
	
	Fixes bug #37045.

2003-01-18  Jonathan Pryor <jonpryor@vt.edu>

	* FileStream.cs: Add IsAsync property.  (Documented in "C# In A Nutshell".)

2003-01-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MemoryStream.cs: fixed bug #36319.

2002-12-16  Eduardo Garcia Cebollero <kiwnix@yahoo.es>
	
	* Directory.cs: Some fixes to SMB shares handling, and not compiling 
	with csc, mcs compiles it correctly (mcs bug 35652)

2002-12-14  Eduardo Garcia Cebollero <kiwnix@yahoo.es>

	* Directory.cs: Some fixes related to correct some exceptions thrown

2002-12-11  Eduardo Garcia Cebollero <kiwnix@yahoo.es>

	* Directory.cs: Some Exceptions added, fixed GetParent(),
	CreateDirectory() should work with unix, native windows and
	windows samba shares. Converted end-lines from dos-mode to unix-mode

2002-12-08  Eduardo Garcia Cebollero <kiwnix@yahoo.es>

	* Directory.cs: CreateDirectory  works now with Absolute paths
	too, not only with relative ones.

2002-12-07  Peter Williams  <peterw@ximian.com>

	* Directory.cs: Don't use the uninitialized pathsumm here.
	Don't try and create "" if we're using an absolute path.

2002-12-07  Eduardo Garcia Cebollero <kiwnix@yahoo.es>

	* Directory.cs: Now the creation of a new directory works recursively
	it will make parents as needed.

2002-11-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* BufferedStream.cs: applied patch from <carlosga@telefonica.net> that
	fixes Flush ().

Tue Nov 19 13:01:22 CET 2002 Paolo Molaro <lupus@ximian.com>

	* StreamWriter.cs: output the encoding preamble at the start of a
	stream if needed.

2002-11-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* StreamReader.cs: Changed all Encoding.UTF8 to Encoding.UTF8Unmarked.

2002-11-06  Miguel de Icaza  <miguel@ximian.com>

	* StreamWriter.cs: Changed all Encoding.UTF8 to Encoding.UTF8Unmarked.

2002-10-31  Dick Porter  <dick@ximian.com>

	* FileStream.cs: Fix buffering properly this time.  Also kludge
	around broken pipe errors, treating them as EOF instead of
	throwing an IO exception.

	* MonoIO.cs: Return the error status in a parameter, as the
	GetLastError() value has long since been blown away if we try and
	look it up in a subsequent internal call invocation.

	* FileSystemInfo.cs: 
	* FileInfo.cs: 
	* File.cs: 
	* Directory.cs: MonoIO methods now have an error parameter

2002-10-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* TextReader.cs: implemented ReadBlock ().

2002-10-30  Miguel de Icaza  <miguel@ximian.com>

	* StreamWriter.cs: Ditto for Null stream.

	* BinaryReader.cs: Use Unmarked here too.

	* BinaryWriter.cs: Use the UTF8Unmarker encoding by default, this
	is what .NET does.

2002-10-23  Dick Porter  <dick@ximian.com>

	* FileStream.cs: Implemented CanSeek, and used it around all the
	calls to MonoIO.Seek.  Fixed buffering in Read() so that it
	doesn't block forever on short reads.

	* MonoFileType.cs: New enum for GetFileType
	
	* MonoIO.cs: Added GetFileType

2002-10-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* StreamReader.cs: ReadLine now treats a \r not followed by a \n as a
	\n (this is what MS does).

2002-10-18  Dick Porter  <dick@ximian.com>

	* FileStream.cs: SeekOrigin.End still calculates the offset from
	the end of the file with positive values extending the length.
	Fixes bug 32471.

2002-10-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Path.cs: some cleanup. Thanks to Martin Aliger.

2002-10-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* FileStream.cs: throw an exception if trying to open a directory.
	Thanks to Martin Aliger.

2002-10-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Path.cs: fixes bug #28046.

2002-09-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* StreamReader.cs: give more information when wrong parameters passed.

2002-09-21  Miguel de Icaza  <miguel@ximian.com>

	* FileStream.cs: Do not call FSync on the file.

2002-09-16  Miguel de Icaza  <miguel@ximian.com>

	* TextWriter.cs (Null): The Null field should be an instance of a
	TextWriter class that does nothing, so it is an instance of the
	NullTextWriter class.

2002-09-16  Nick Drochak  <ndrochak@gol.com>

	* MemoryStream.cs (Close): Don't throw an exception if the stream
	is already closed.

2002-09-15  Miguel de Icaza  <miguel@ximian.com>

	* FileStream.cs (Dispose): Call FlushBuffer(), and not Flush, as
	Flush calls fsync().  

	The API docs show no explicit mention that Flush() should even do
	an fsync, I am thinking that we should drop that from the
	runtime. 

2002-09-09  Miguel de Icaza  <miguel@ximian.com>

	* StreamWriter.cs: When no encoding is provided, create an
	encoding without markers, this is what MS does.

2002-09-06  Miguel de Icaza  <miguel@ximian.com>

	* StreamReader.cs: Implement detection of byte marks and skipping
	of byte marks at the beginning of the stream.

	(ReadToEnd): Use buffered read instead of char-by-char
	processing. 

	Correct the default arguments for creating the StreamReader.

2002-08-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* CheckArgument.cs: fixed check for empty string.
	* Path.cs: various fixes. It passes all the tests in new PathTest.

2002-08-29  Duncan Mak  <duncan@ximian.com>

	* StreamWriter.cs: Set DisposedAlready after calling flush. Fixes
	the build for gtk#.

2002-08-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* BinaryReader.cs:
	* BinaryWriter.cs:
	* MemoryStream.cs:
	* StreamReader.cs:
	* StreamWriter.cs:
	* StringReader.cs:
	* StringWriter.cs:
	* TextWriter.cs: IDisposable fixes.

2002-08-24  Miguel de Icaza  <miguel@ximian.com>

	* StreamReader.cs: Removed TODOs, as the code seems to be
	complete. 

	* Path.cs (GetTempFileName): Make this routine atomic by not
	testing and then creating, but using the create call to ensure
	that we own the filename.

2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* FileLoadException.cs: implemented ToString.

	* StreamWriter.cs: added Null field and implemented Write (char) and
	Write (char []).

2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* StreamReader.cs: implemented NullStreamReader.

2002-08-21  Miguel de Icaza  <miguel@ximian.com>

	* Path.cs (GetDirectoryName): Fix for filenames with size = 1

	* File.cs: Removed all references that threw exceptions when the
	paths contains a colon, as this is a valid part of an identifier
	on Unix.

	Everywhere: The String.Empty return from GetDirectoryName means
	that there is no directory information about the path.

2002-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* FileNotFoundException.cs: use Message and InnerException from base
	class. Changed Message and ToString ().

2002-08-19  Dick Porter  <dick@ximian.com>

	* BinaryWriter.cs: The length of a string is counted in bytes, not
	chars

2002-08-18  Dick Porter  <dick@ximian.com>

	* BinaryReader.cs: Fixed buffering

2002-08-09  Nick Drochak  <ndrochak@gol.com>

	* BinaryReader.cs: added virtual to Dispose(bool).

2002-08-03  Jason Diamond  <jason@injektilo.org>

	* StringWriter.cs: Return UnicodeEncoding for Encoding property.

2002-08-03  Jason Diamond  <jason@injektilo.org>

	* StreamWriter.cs: Use GetByteCount() to get exact length instead
	of GetMaxByteCount when converting chars to bytes.

2002-07-31  Duncan Mak  <duncan@ximian.com>

	* StreamReader.cs: 
	(Dispose): Added and implmented.

	* StreamWriter.cs: 
	(Dispose): Fixed visibility.
	(Initialize): Fixed visibility, made internal.

	* BinaryReader.cs:
	(Dispose): Fixed visibility.

2002-07-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* File.cs:
	(Create): allow file names without path.

Fri Jul 26 15:45:04 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* FileStream.cs: patch from erik@bagfors.nu to add
	Name property support.

2002-07-20  Dick Porter  <dick@ximian.com>

	* MonoIO.cs: Added icall to CreatePipe

2002-07-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* FileInfo.cs: fixes buglet #27940

2002-07-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Path.cs: removed unneeded line from GetExtension.

2002-07-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* FileStream.cs:
	(.ctor): call MonoIO.GetException with the file name.

2002-07-02  Mike Kestner  <mkestner@speakeasy.net>

	* StreamReader.cs: Guard against ^\n lines as pointed out by Gonzalo.

2002-07-02  Mike Kestner  <mkestner@speakeasy.net>

	* StreamReader.cs: Revert the last Peek change and fix the ReadLine
	end of line detection code instead.

2002-07-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* StreamReader.cs:
	(Peek): no need to have seek capabilitites. 

2002-06-17  Dietmar Maurer  <dietmar@ximian.com>

	* Path.cs (ChangeExtension): handle some special cases (fixes bug #25319)

	* File.cs (Delete): only call Directory.Exists() if DirName != ""

2002-06-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Directory.cs: fixed bug #26133 and also test if the directory exist
	before performing the search.

2002-06-12  Nick Drochak  <ndrochak@gol.com>

	* StringReader.cs (ReadLine): Return null when we get to end of the
	string.

2002-05-22  Lawrence Pit  <loz@cable.a2000.nl>

	* StreamWriter.cs: added ability to write null value
	
2002-05-19  Lawrence Pit  <loz@cable.a2000.nl>

	* Stream.cs: NullStream.ReadByte now returns -1 instead of 0 to
	prevent endless loops.

2002-05-17  Dan Lewis  <dihlewis@yahoo.co.uk>

	* FileStream.cs: Enforce lower bound on buffer size.

2002-05-16  Piers Haken <piersh@friskit.com>

	* Stream.cs: Implement synchronous {Begin|End}{Read|Write}() methods.

2002-05-17  Nick Drochak  <ndrochak@gol.com>

	* StreamWriter.cs: Implement buffering.  Also implemented dispose
	pattern as recommended by the MS docs.  Must call Close() now
	to ensure the buffer is flushed.

2002-05-15  Nick Drochak  <ndrochak@gol.com>

	* Path.cs (GetDirectoryName): Return String.Empty if there is no
	directory

	* StreamReader.cs: Add some parameter checking on file names.

	* StreamWriter.cs: Add some parameter checking on file names.

2002-05-14 Nick Drochak  <ndrochak@gol.com>

	* File.cs: Add parameter checks to most methods. Not completely done,
	but all current unit tests pass.

	* Path.cs: Implement GetTempFileName().

2002-05-10  Nick Drochak  <ndrochak@gol.com>

	* StreamWriter.cs (Flush): Throw proper exception if internal stream
	has already been closed when we try to flush.

2002/05/10  Nick Drochak <ndrochak@gol.com>

	* FileNotFoundException.cs (ToString): Don't try to use the inner
	exception, because it might be null.  Use the message instead.

2002-05-09  Nick Drochak  <ndrochak@gol.com>

	* File.cs (Delete): Do not throw an exception if the file does not
	exist.

2002-05-08  Mike Gray     <mikeg@mikegray.org>

	* File.cs: According to ECMA spec and MS docs Copy(src, dest)
        should not overwrite dest by default.

2002-05-08  Nick Drochak  <ndrochak@gol.com>

	* StreamWriter.cs: Add paramter check to constructors and throw
	exceptions where appropriate.

Tue May 7 11:47:46 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* StreamReader.cs: return the number of chars read even if we diddn't
	fill the whole buffer (makes Sergey's ilasm work with mono).

2002-05-07  Mike Gray     <mikeg_us@hotmail.com> 

	* FileInfo.cs (Create): Implement missing method.

2002-05-07  Mike Gray     <mikeg_us@hotmail.com>

	* File.cs: Implemented CreateText method, and fixed dst compares
	to compare against "" instead of null twice.

2002-05-05  Nick Drochak  <ndrochak@gol.com>

	* StreamReader.cs: Throw exceptions where needed. Changed Null field to
	use new internal class since null cannot be passed to constructor 
	anymore. Also, fix a coule of small bugs.

2002-05-03  Nick Drochak  <ndrochak@gol.com>

	* MemoryStream.cs: Refrain from allocating array until the space is
	really needed. This fixes a bug in the Length property when the
	constructor without the byte array is used.

2002-05-01  Duncan Mak  <duncan@ximian.com>

	* DirectoryNotFoundException.cs (constructor): Added missing
	serialization constructor.

2002-04-30  Duncan Mak  <duncan@ximian.com>

	* FileLoadException.cs (constructors): Added missing (string,
	string) ctor, as well as (string, string, Exception) ctor.

	(Message): Added more info to the error message

	(ToString): Added. We'll need to add the StackTrace stuff when
	that works.

	* FileShare.cs: Add a missing field, Inheritable.
	
	* TextReader.cs: Renamed Synchronised method to Synchronized.

	* TextWriter.cs: Renamed Synchronised method to Synchronized.
	Renamed protected member coreNewLine to CoreNewLine.

2002-04-30  Sergey Chaban  <serge@wildwestsoftware.com>

	* BinaryReader.cs: Allocate buffer before its first use.
	Handle end of stream properly. Methods to read native types
	(ReadInt* etc.) are little-endian (see Compact Framework docs).

	* BinaryWriter.cs: Store data in little-endian format.
	Use internal buffer for conversions.

2002-03-31  Dick Porter  <dick@ximian.com>

	* Directory.cs: Strip out "." and ".." from returned list

	* FileAttributes.cs: Get the right enum values

2002-03-28  Dietmar Maurer  <dietmar@ximian.com>

	* TextWriter.cs (write): added check for null

2002-03-28  Dan Lewis  <dihlewis@yahoo.co.uk>

	* Directory.cs: Throws DirectoryNotFoundException.
	* MonoIO.cs: Fixed to work around enum problem.

2002-03-27  Dan Lewis  <dihlewis@yahoo.co.uk>

	* StreamReader.cs: Implemented ReadLine() and ReadEnd().

2002-03-27  Dan Lewis  <dihlewis@yahoo.co.uk>

	* Directory.cs, File.cs, FileSystemInfo.cs, FileInfo.cs,
	DirectoryInfo.cs, Path.cs: Modified to use MonoIO class instead of
	wrapper and PAL classes.

	* MonoIO.cs, MonoIOStat.cs, MonoIOError.cs: Added.

2002-03-25  Mike Kestner <mkestner@speakeasy.net>

	* MemoryStream.cs (Read): Fixed bug in exception throw.

2002-03-24  Mike Kestner <mkestner@speakeasy.net>

	* StreamReader.cs (ReadBuffer): Fix buffer merging bugs.

2002-03-23  Martin Baulig  <martin@gnome.org>

	* StreamReader.cs: Always do buffered reading, use 4k blocks.
	(Read (char[], int, int)): Implemented.
	(DiscardBufferedData): Implemented.

2002-03-21  Mike Kestner <mkestner@speakeasy.net>

	* StreamReader.cs : Fill out, add buffering, and use encoding.

2002-03-19  Martin Baulig  <martin@gnome.org>

	* StreamWriter.cs (StreamWriter (string)): The default is to override
	the file, not to append to it.
	(StreamWriter (string path, bool append)): When appending, seek to the
	end of the file, otherwise truncate the file to zero length.
	(Dispose (bool)): Close the internalStream.
	(Flush): Flush the interalStream.
	(Write (char[], int, int)): Flush the internalStream in auto-flush-mode.

2002-03-19  Dan Lewis <dihlewis@yahoo.co.uk>

	* FileStream.cs: Flush buffer before FileSetLength.

2002-02-28  Miguel de Icaza  <miguel@ximian.com>

	* Stream.cs (NullStream): Do not track position, this beast does
	nothing in practice.

2002-03-15  Dan Lewis <dihlewis@yahoo.co.uk>

	* SearchPattern.cs: New class. Glob matching code for Directory.
	* Directory.cs: Changed to use SearchPattern instead of mono_glob_*()

2002/03/15 Nick Drochak <ndrochak@gol.com>

	* DirectoryInfo.cs: Fixed the overloaded GetDirectories and GetFiles.
	This code seemed to be copied from somewhere, and it was close,
	but didn't match the docs.  This was the last bit needed to get
	NAnt to compile with our class libs.

2002-03-12  Duncan Mak  <duncan@ximian.com>

	* EndOfStreamException.cs:
	* FileLoadException.cs:
	* FileNotFoundException.cs:
	* PathTooLongException.cs: Changed the base classes to IOException
	instead of SystemException.

	* IOException.cs: Added missing constructors.
	
2002-03-07  Nick Drochak  <ndrochak@gol.com>

	* FileMode.cs: Docs don't say this should be explicitly derived from
	int, so just make it a normal Enum.

2002-03-02  Jason Diamond  <jason@injektilo.org>

	* StringReader.cs: Fixed off-by-one error in Peek() and Read().

2002-02-12  Nick Drochak  <ndrochak@gol.com>

	* PathTooLongException.cs: put it in the correct namespace
	* EndOfStreamException.cs: put it in the correct namespace

Thu Jan 31 17:32:32 CET 2002 Paolo Molaro <lupus@ximian.com>

	* Directory.cs: handle opendir() return NULL and absolute filenames.

2002-01-31  Duncan Mak  <duncan@ximian.com>

	* FileLoadException.cs:
	* FileNotFoundException: Added missing bits for serialization.

Thu Jan 24 17:42:54 CET 2002 Paolo Molaro <lupus@ximian.com>

	* Directory.cs: allow directories in GetFiles() mask.

2002-01-23  Miguel de Icaza  <miguel@ximian.com>

	* FileInfo.c (CopyTo, MoveTo): Implement.

	* FileStream.cs: Add argument checking to the constructor.

	* File.cs: Rewrote most of the file.  Implement Copy, Open, Create,
	OpenText, OpenWrite, Move.  Made pending methods flagged as MonoTODO. 
	
	* Directory.cs (Delete): reimplement without using DirectoryInfo.
	(Delete): Implement the recursive version.
	(GetCreationTime, GetLastWriteTime, GetLastAccessTime): Implement.
	(Move): Reimplement.
	(getNames): dead code removal.

	* Path.cs: define an internal DirectorySeparatorStr that we use in
	a few spots.

	* Wrapper.cs: Updated to new version.
	
	* DirectoryInfo (Delete): Implement using the Directory API.

	* DirectoryInfo.cs (GetFiles, GetDirectories, GetFileSystemInfos,
	Delete, Create, Parent, Exists, MoveTo): Implement. 

	* Directory.cs (GetListing): implement new utility function.
	(GetDirectories): Implement.
	(GetFileSystemEntries): Implement.
	(GetFiles): Implement.

	* CheckArgument.cs (Path): Do not allow null by default.

Tue Jan 22 22:53:23 CET 2002 Paolo Molaro <lupus@ximian.com>

	* DirectoryInfo.cs, FileInfo.cs: do not use Debug from the system
	assembly in corlib.

2002-01-20 Nick Drochak  <ndrochak@gol.com>

	* SeekOrigin.cs: Added Serializable attribute.

2002-01-19  Duncan Mak  <duncan@ximian.com>

	* PathTooLongException.cs: 
	* EndOfStreamException.cs: Added to CVS.

Thu Jan 10 12:06:46 MST 2002 Matt Kimball <matt@kimball.net>

	* BufferedStream.cs: Initial implemenation.  The synchronous
	methods for both reading and writing are implemented.  I'll do the
	asynchronous methods in a bit.
	
Wed Jan  9 16:04:39 MST 2002 Matt Kimball <matt@kimball.net>

	* BinaryWriter.cs: Initial implementation.  And it's all there.

	* BinaryReader.cs: The constructor now uses the passed in encoding,
	not UTF8 always.

Wed Jan  9 13:54:28 MST 2002 Matt Kimball <matt@kimbal.net>

	* BinaryReader.cs: Initial implementation.  I think it's complete.

2002-01-04  Ravi Pratap  <ravi@ximian.com>

	* CheckArgument.cs, CheckPermission.cs, Directory.cs: MonoTODO
	attribute decorations.

	* DirectoryInfo.cs, File.cs, FileInfo.cs, FileSystemInfo.cs,
	Path.cs, TextReader.cs, TextWriter.cs : Ditto.

	* FileLoadException.cs, FileNotFoundException.cs, StreamReader.cs: 
	Ditto.

2001-12-11  Dick Porter  <dick@ximian.com>

	* FileStream.cs: Use handles rather than casting file descriptors.
	Added Handle property.

Wed Nov 14 16:47:47 CET 2001 Paolo Molaro <lupus@ximian.com>

	* CheckPermission.cs: disable ModeAccess() code: it's wrong.
	* FileStream.cs: only trow an exception if the read failed in ReadByte().
	* StreamReader.cs: implement Peek and Read.
	* TextWriter.cs: CLSCompliant updates.

2001-11-10  Sean MacIsaac  <macisaac@ximian.com>

	* FileNotFoundException.cs: Added some constructors

	* Path.cs (GetFullPath): Fixed implementation

Fri Nov 2 18:27:58 CET 2001 Paolo Molaro <lupus@ximian.com>

	* DirectoryNotFoundException.cs: implemented.

Tue Sep 25 18:54:06 CEST 2001 Paolo Molaro <lupus@ximian.com>

	* File.cs: fix signatures of the Open() and OpenRead() functions
	(they are static).

Thu Sep 13 18:04:23 CEST 2001 Paolo Molaro <lupus@ximian.com>

	* FileLoadException.cs, FileNotFoundException.cs: added.

2001-08-28  Dietmar Maurer  <dietmar@ximian.com>

	* TextReader.cs: implemented the Read method

	* StreamReader.cs: impl. stubs

	* StreamWriter.cs: impl.

	* TextWriter.cs: implemented Write and WriteLine methods

Sun Aug 26 23:01:41 CEST 2001 Paolo Molaro <lupus@ximian.com>

	* FileAccess.cs, FileMode.cs: change values to be compatible with
	the ms ones.
	
Sun Aug 26 11:47:56 CEST 2001 Paolo Molaro <lupus@ximian.com>

	* IOException.cs: Implemented System.IO.Exception.

2001-07-18  Michael Lambert <michaellambert@email.com>

        *SeekOrigin.cs.cs, FileShare.cs, FileMode.cs, FileAccess.cs: Add.

2001-07-19  Marcin Szczepanski <marcins@zipworld.com.au>

	* System.IO.MemoryStream.cs: Added.  Had quite a few cases of
	"LAMESPEC", but the tests work against the MS implementation so
	the major functions are right (ie. Read/Write/Seek).  Some more
	tests required for the various constructors and exceptions.

2001-07-16  Marcin Szczepanski <marcins@zipworld.com.au>

	* StringReader.cs, StringWriter.cs, TextReader.cs, TextWriter.cs:
	New class implemenations.

	* StringReaderTest.cs, StringWriterTest.cs: Test suite for the above.