/
ChangeLog
5873 lines (3801 loc) · 194 KB
/
ChangeLog
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
2009-09-29 Marek Habersack <mhabersack@novell.com>
* HttpResponse.cs: use full url in redirect if
UseFullyQualifiedRedirectUrl is set to true in httpRuntime
configuration section. Patch from Brett Kiefer
<brett@fogcreek.com>, thanks! Fixes bug #542846
2009-09-29 Gonzalo Paniagua Javier <gonzalo@novell.com>
* HttpContext.cs: try to load App_GlobalResouces.dll if it has not
been set but it exists in 'bin'.
2009-09-28 Marek Habersack <mhabersack@novell.com>
* HttpContext.cs: GetResourceProvider - renamed the 'key' argument
to 'virtualPath' in order to reflects its purpose better. Local
resource providers are created for the passed virtualPath and not
for the current request's path. Fixes bug #542484
2009-09-25 Marek Habersack <mhabersack@novell.com>
* StaticSiteMapProvider.cs: MapUrl must normalize paths. Fixes bug
#541969
* XmlSiteMapProvider.cs: siteMapFile parameter must be mapped in
Initialize. Fixes bug #541969
2009-09-24 Marek Habersack <mhabersack@novell.com>
* XmlSiteMapProvider.cs: added "securityTrimmingEnabled" to the
list of supported attributes in Initialize. Fixes bug #541607
2009-09-07 Marek Habersack <mhabersack@novell.com>
* HttpContext.cs: when creating local resource provider, pass the
current file's virtual path to CreateLocalResourceProvider. Fixes
bug #536757
* XmlSiteMapProvider.cs: do not allow the provider to be
intialized more than once.
Initialize throws if it finds unknown attributes in the
'attributes' collection.
AddNode checks its arguments and throws if they are null or aren't
from the same provider.
FindStartingNode throws exceptions in several erroneous situations
now.
Added private method GetConfigDocument which performs several
checks on the source .sitemap file and throws exceptions if it
finds any errors.
BuildSiteMap clears provider state before building the map.
BuildSiteMapRecursive correctly deals with custom providers. Fixes
bug #465696
FindSiteMapNode maps url before searching. Fixes bug #465696
* VirtualPathUtility.cs: Combine a bit more efficient
* StaticSiteMapProvider.cs: FindSiteMap node checks if rawUrl is
relative to application root and if yes, makes it absolute.
MapUrl converts both rooted and not rooted urls to absolute.
* SiteMapProvider.cs: check if HttpContext.Request exists before
using it in FindSiteMapnode
* SiteMap.cs: Providers collection must be read-only.
2009-09-04 Marek Habersack <mhabersack@novell.com>
* HttpRuntime.cs: retrieve real Mono version from the runtime and
store it in the MonoVersion internal static property.
* HttpException.cs: report real Mono version when backtrace is
displayed.
2009-08-24 Marek Habersack <mhabersack@novell.com>
* VirtualPath.cs: Added new constructor which takes virtual and
physical paths as well as a boolean marking the instance as
referring to a fake location. Part of fix for bug #463813
2009-07-28 Gonzalo Paniagua Javier <gonzalo@novell.com>
* HttpApplicationFactory.cs: allow subclasses of EventHandler for
event handlers in global.asax.
Fixes bug #525743.
2009-07-23 Marek Habersack <mhabersack@novell.com>
* HttpException.cs: if an exception is processed which refers to
internal "files", don't show the internal name.
2009-07-18 Marek Habersack <mhabersack@novell.com>
* HttpContext.cs: GetGlobalResourceObject must look for resources
in the 'Resources' "namespace" - it was a regression from the
previous change to that method.
2009-07-15 Marek Habersack <mhabersack@novell.com>
* HttpApplicationFactory.cs: added internal methods to
enable/disable specific watchers. Part of fix for bug #522017
2009-07-14 Gonzalo Paniagua Javier <gonzalo@novell.com>
* ApplicationShutdownReason.cs: add new 3.5 value.
* ParserErrorCollection.cs: add setter for ParserError.
Patch from Daniel Gagne.
2009-07-14 Marek Habersack <mhabersack@novell.com>
* HttpApplicationFactory.cs: OnFileChanged doesn't reload
application if reload suppression is active.
2009-07-13 Marek Habersack <mhabersack@novell.com>
* HttpApplication.cs: LoadType - wrap call to LoadTypeFromBin in
try/catch so that we can decide whether or not to throw
exceptions. LoadTypeFromBin - ignore the FileLoadException and
BadImageException exceptions as they don't matter in this
context.
2009-07-13 Gert Driesen <drieseng@users.sourceforge.net>
* HttpResponseStream.cs: Added argument checks to Write. Modified
methods/properties that requires a readable stream to throw
NotSupportedException instead of InvalidOperationException for
compatibility with MS.
2009-07-09 Gonzalo Paniagua Javier <gonzalo@novell.com>
* HttpApplication.cs: use GetSection instead of
OpenWebConfiguration+GetSection.
2009-07-09 Marek Habersack <mhabersack@novell.com>
* HttpContext.cs: fall back to default resource provider factory
if the factory provided by user doesn't have the required object
in Get{Global,Local}ResourceObject. Fixes bug #520397
Refactored the GetResourceObject method and the
ResourceManagerCacheKey class to DefaultResourceProvider.
2009-07-07 Gonzalo Paniagua Javier <gonzalo@novell.com>
* ParserError.cs: add 3 missing setters. Patch from Daniel Gagne.
2009-06-15 Marek Habersack <mhabersack@novell.com>
* HttpCachePolicy.cs: SetHeaders adds max-age when MaxAge is set
to TimeSpan.Zero by calling SetMaxAge. Fixes bug #513000
2009-06-05 Marek Habersack <mhabersack@novell.com>
* VirtualPathUtility.cs: IsValidVirtualPath no longer uses
WebConfigurationManager.GetSection to retrieve the verification
setting. Instead, the setting is retrieved in the static
constructor.
* HttpRequest.cs: ApplyUrlMapping must not use
WebConfigurationManager.GetSection as it would cause a recursive
call loop. Code to detect whether url mappings are in effect has
been moved to a static constructor.
2009-06-04 Marek Habersack <mhabersack@novell.com>
* HttpResponse.cs: version header configuration is read lazily
now.
* HttpException.cs: do not show version info if custom errors are
in effect. Fixes bug #509092
Don't generate trace for 403. Fixes bug #509092
* HttpApplicationFactory.cs: OnFileChanged ignores the directory
part of the file triggering the event. Fixes bug #509998
2009-06-03 Marek Habersack <mhabersack@novell.com>
* VirtualPathUtility.cs: IsValidVirtualPath now checks the value
of the
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ASP.NET\VerificationCompatibility
registry key when running on Windows and also consults the
mono-specific system.web/monoSettings configuration section to see
what is the verificationCompatibility property set to. If either
of the two is set to 1, Mono will not verify the validity of
the current request's path. Fixes bug #509163
* HttpApplicationFactory.cs: OnFileChanged must check whether the
modified location is a directory before it decides to ignore it
when watcher's filter is "?eb.?config". Fixes bug #509450 (see
also bug #495011)
* HttpForbiddenHandler.cs: updated the error message to match
.NET, added requested path and description. Fixes bug #509092
* HttpException.cs: if trace is not requested, don't output <!--
following the version information in WriteFileBottom. Fixes bug
#509475
GetDefaultErrorMessage appends trace only if showTrace is
true. Fixes bug #509092
2009-06-02 Marek Habersack <mhabersack@novell.com>
* HttpApplication.cs: LocateHandler needs to pass current request
path and filepath to WebConfigurationManager when retrieving
system.web/httpHandlers section as only this will guarantee that
any <location> elements relating to the current request's which
contain system.web/httpHandlers section will be correctly read and
used. Also fixes reading httpHandlers section if it's found in
web.config located in a subdirectory. Fixes bug #509069
* HttpException.cs: 403 errors get same treatment as 404
below. Fixes bug #509092
2009-06-01 Marek Habersack <mhabersack@novell.com>
* HttpException.cs: if custom errors are enabled and the error
code is 404 show the "standard" 404 error message instead of the
default custom error mode one. Fixes bug #508649
2009-05-28 Marek Habersack <mhabersack@novell.com>
* HttpUtility.cs: fixed UrlDecode for encoded strings which
should be converted to byte sequences longer than 2 bytes. Fixes
bug #507666
2009-05-14 Marek Habersack <mhabersack@novell.com>
* HttpApplication.cs: LocateHandler won't cache if a default
handler was returned.
2009-05-07 Gonzalo Paniagua Javier <gonzalo@novell.com>
* MimeTypes.cs: add silverlight related types.
2009-04-28 Gonzalo Paniagua Javier <gonzalo@novell.com>
* HttpContext.cs:
* HttpWorkerRequest.cs:
* HttpRuntime.cs: if other parts of the system are using the
threadpool and we queue requests, once the threadpool is free we
might still not get back to use it to the maximum extent possible.
Adding a few more calls to QueuePendingRequest ensures that does not
happen.
2009-04-24 Marek Habersack <mhabersack@novell.com>
* HtmlizedException.cs: make HtmlException derive from
HttpException. System.Web.Mvc relies upon compile and parse
exception being descendants of HttpException or otherwise it will
catch and ignore compilation/parsing errors.
2009-04-16 Marek Habersack <mhabersack@novell.com>
* HttpContext.cs: local resources code now uses the custom
resource provider factory, just like the global resources
code. Fixes bug #493263
2009-04-15 Marek Habersack <mhabersack@novell.com>
* HttpApplicationFactory.cs: if a notification is received from a
FileSystemWatcher which was configured to watch for
subdirectories, uses a filter (currently we have just one such
watcher - waiting for changes to '?eb.?onfig') and the event
doesn't match the filter, ignore the event. Fixes bug #495011
2009-04-13 Gonzalo Paniagua Javier <gonzalo@novell.com>
* HttpUtility.cs: the collection returned from ParseQueryString knows
how to convert the key/value pairs to a string.
2009-04-10 Gonzalo Paniagua Javier <gonzalo@novell.com>
* HttpResponseStream.cs: use the unsafe version when copying buffers.
2009-04-06 Marek Habersack <mhabersack@novell.com>
* HttpRuntime.cs: added a new internal static property
IsDebuggingEnabled
* HttpContext.cs: IsDebuggingEnabled now calls
HttpRuntime.IsDebuggingEnabled
2009-04-03 Gert Driesen <drieseng@users.sourceforge.net>
* HttpRuntime.cs: Avoid ANE on Windows when HttpRuntime is used
outside of ASP.NET. Fixed compiler warning by setting
assemblyMappingEnabled.
2009-04-02 Marek Habersack <mhabersack@novell.com>
* HttpException.cs: if there are more lines with errors, display
them all.
2009-03-31 Marek Habersack <mhabersack@novell.com>
* HttpApplicationFactory.cs: use glob patterns to watch for
changes to global.asax and web.config files.
Set up recursive watch on web.config in a separate thread, to
minimize application startup delay. Fixes bug #490497
* VirtualPath.cs: added code to detect whether the VirtualPath
instance represents a fake virtual path (IsFake property).
Added new property DirectoryNoNormalize which returns
non-normalized directory for the VirtualPath instance.
Made ToString () a bit more friendly and well-behaved.
2009-03-26 Marek Habersack <mhabersack@novell.com>
* HttpWorkerRequest.cs: use a generic dictionary to keep header
names in 2.0+.
GetKnown{Request,Response}HeaderIndex doesn't use the switch
anymore.
* HttpResponse.cs: WriteHeaders now checks whether a header to be
sent is a known one or not and uses the appropriate method to send
that header. Partial fix for bug #488702
2009-03-25 Gonzalo Paniagua Javier <gonzalo@novell.com>
* HttpResponse.cs: ClearHeaders() also resets cacheability.
Bug #485557 fixed.
2009-03-21 Marek Habersack <mhabersack@novell.com>
* HttpResponse.cs: added two missing 3.0+ properties -
SubStatusCode and TrySkipIisCustomErrors.
2009-03-04 Marek Habersack <mhabersack@novell.com>
* HttpRuntime.cs: do not clean the dynamic base directory in
DoUnload, it can cause race conditions.
2009-03-03 Marek Habersack <mhabersack@novell.com>
* HttpResponse.cs: fully implemented the Headers property.
It is also used in the 1.1 profile, but is internal.
* HttpCookie.cs: GetCookieHeader renamed to GetCookieHeaderValue -
now returns a string with the header value.
* HttpCacheVaryByParams.cs: GetResponseHeader renamed to
GetResponseHeaderValue - now returns a string with the header
value.
* HttpCachePolicy.cs: SetHeaders now takes a NameValueCollection
instead of an ArrayList
* HttpRequest.cs: avoid calculating the same value twice in
MakeInputStream
2009-03-02 Everaldo Canuto <ecanuto@novell.com>
* HttpResponse.cs: Headers property implementation.
2009-02-28 Gonzalo Paniagua Javier <gonzalo@novell.com>
* Web/HttpResponseHeader.cs:
* Web/HttpResponse.cs:
* Web/QueueManager.cs:
* Web/HttpRequest.cs:
* Web/TraceManager.cs:
* Web/HttpServerUtility.cs:
* Web/HttpApplication.cs: use GetWebApplication
instead of GetSection for application level configuration.
2009-02-26 Marek Habersack <mhabersack@novell.com>
* HttpResponse.cs: added DisableKernelCache and TransmitFile
methods.
* IisTraceListener.cs: added + implemented
2009-02-25 Marek Habersack <mhabersack@novell.com>
* HttpApplication.cs: let the current context known that
MapRequestHandler is done.
* HttpContext.cs: implemented RemapHandler
2009-02-24 Marek Habersack <mhabersack@novell.com>
* TempFileStream.cs: the class is internal
* VirtualPathUtility.cs: ToAbsolute (string, string, bool) is
internal
* HttpException.cs: made the HttpException (int httpCode, string
message, Exception innerException, string resourceName) internal.
2009-02-22 Gonzalo Paniagua Javier <gonzalo@novell.com>
* HttpServerUtility.cs: allow Transfer to static files too.
2009-02-20 Gonzalo Paniagua Javier <gonzalo@novell.com>
* HttpWriter.cs: new Response property and WriteUTF8Ptr
method.
* HttpResponseStream.cs: added support for writing from an
IntPtr. copied the memcpy method from String.cs.
2009-02-18 Gonzalo Paniagua Javier <gonzalo@novell.com>
* HttpApplicationFactory.cs: check of global.asax was precompiled.
2009-01-29 Gonzalo Paniagua Javier <gonzalo@novell.com>
* HttpApplicationFactory.cs: fix check that avoids lock. Keep one
HttpApplication instance ready to be returned in an instance variable
to avoid a few locks.
2009-01-29 Marek Habersack <mhabersack@novell.com>
* HttpApplicationFactory.cs: optimize lock usage.
2009-01-23 Gonzalo Paniagua Javier <gonzalo@novell.com>
* HttpResponse.cs: make sure config is not null here.
* HttpApplication.cs: add a timer (-d:PIPELINE_TIMER) for the pipeline.
Handle timeouts for OutputPage() too.
2009-01-23 Gonzalo Paniagua Javier <gonzalo@novell.com>
* HttpApplicationFactory.cs: set/reset the context for the application
when creating/disposing. Dispose() out of the lock.
2009-01-24 Marek Habersack <mhabersack@novell.com>
* XmlSiteMapProvider.cs: if a nested sitemap is used (via the
siteMapFile node attribute) watch the named file for
changes. Fixes bug #465693
2009-01-19 Christian Hergert <christian.hergert@gmail.com>
* QueueManager.cs: Implement requests queued performance counter.
* HttpRuntime.cs: Implement requests total counter.
* HttpApplication.cs: Implement requests total counter.
2009-01-13 Dean Brettle <dean@brettle.com>
* HttpApplicationFactory.cs: if there are any *.browser files in
App_Data/Mono_Machine_Browsers/, use those instead of the default
machine browser files. This allows app developers to workaround
limitations with Mono's default browser files without causing
incompatibilities with MS's implementation.
2009-01-09 Marek Habersack <mhabersack@novell.com>
* HttpContext.cs: RewritePath now treats relative and absolute
file paths with more care. If a path is of the ~/file.aspx form,
then the ~/ part is removed and the rest is combined with the base
virtual path. If the file path is of the ~ or /file.aspx forms,
then it is combined verbatim with the base virtual path. Fixes bug
#463964
Make sure the path returned from HttpRequest.BaseVirtualPath
contains the trailing slash before combining. Fixes bug #463964
2008-12-25 Gonzalo Paniagua Javier <gonzalo@novell.com>
* ServerVariablesCollection.cs: use IndexOf (char).
2008-12-24 Marek Habersack <mhabersack@novell.com>
* HttpApplicationFactory.cs: watch for changes to web.config also
in the subdirectories.
2008-12-20 Marek Habersack <mhabersack@novell.com>
* HttpResponse.cs: the code in TransmitFile (VirtualFile, bool)
was an abomination - dear children, don't do this at home (never,
ever, allocate a buffer to load entire file). I will wear a brown
paper bag every 2nd Sunday in the next 6 months for writing the
old version of this code.
New code optimizes the write when DefaultVirtualFile is used (as
it refers to a physical file on disk) and reads/writes other
virtual files in chunks.
2008-12-16 Marek Habersack <mhabersack@novell.com>
* StaticFileHandler.cs: use HttpRuntime.RunningOnWindows instead
of checking the platform directly.
2008-12-09 Marek Habersack <mhabersack@novell.com>
* HttpServerUtility.cs: when Execute finishes, clear
Request.QueryStringRaw. Backport of r121010 by Vladimir Krasnov.
2008-12-03 Gert Driesen <drieseng@users.sourceforge.net>
* NoParamsInvoker.cs:
* HttpApplicationFactory.cs: Fixed support for static eventhandlers.
2008-11-25 Gonzalo Paniagua Javier <gonzalo@novell.com>
* HttpContext.cs: MS does not throw. They just return null.
2008-11-24 Marek Habersack <mhabersack@novell.com>
* HttpRuntime.cs: take PlatformID.MacOSX into account when
determining whether we're running on Windows or not. Possible fix
for #447874
2008-11-21 Marek Habersack <mhabersack@novell.com>
* HttpParseException.cs, HtmlizedException.cs: added
deserialization constructor.
2008-10-31 Marek Habersack <mhabersack@novell.com>
* HttpContext.cs: RewritePath correctly rewrites paths for cases
when application is running under a virtual directory different to
'/'. Fixes bug #371581
RewritePath checks the passed virtual path for validity.
* HttpRequest.cs: MapPath now uses
VirtualPathUtility.IsValidVirtualPath.
* VirtualPathUtility.cs: made Canonize () internal.
Added a new method - IsValidVirtualPath () which checks whether a
passed path contains only characters allowed for virtual paths.
2008-10-22 Marek Habersack <mhabersack@novell.com>
* HttpApplicationFactory.cs: use only the first matching method in
GetApplicationTypeEvents, since it will be the one coming from the
topmost type. Partial fix for bug #437691
2008-10-21 Marek Habersack <mhabersack@novell.com>
* HttpApplication.cs: if context.Session is null in get_Session,
throw an exception. Fixes bug #437289
* CapabilitiesLoader.cs: seal BrowserData.
Seal CapabilitiesLoader.
Do not lock on typeof (CapabilitiesLoader) in GetCapabilities ().
2008-10-16 Marek Habersack <mhabersack@novell.com>
* HttpApplicationFactory.cs: when looking up application type
event handlers (the Application_* methods), look deep in the
parent chain - we must support private handler methods in base
types as well.
2008-10-15 Marek Habersack <mhabersack@novell.com>
* HttpResponse.cs: CacheabilityUpdatedEvent is no longer
used. cached_response is allocated only when the IsCached property
is assigned the 'true' value.
* HttpCachePolicy.cs: CacheabilityUpdatedEvent is no longer used,
removed all the traces of it. SetCacheability should not switch
output caching on.
2008-10-12 Gert Driesen <drieseng@users.sourceforge.net>
* HttpResponse.cs: Simplify code for outputting ASP.NET version, as
version header cannot be configured. MS corrected this documenation
error in .NET 2.0 SDK.
2008-10-03 Gonzalo Paniagua Javier <gonzalo@novell.com>
* HttpApplication.cs: make sure we release the resources used by the
request and/or the response at the end of the request.
Fixes bug #430040.
2008-10-01 Marek Habersack <mhabersack@novell.com>
* BrowserCapabilities.cs: IsBrowser needs to compare browser names
case insensitively.
2008-09-29 Marek Habersack <mhabersack@novell.com>
* HttpApplication.cs: do not assume the passed IAsyncResult is a
is a valid object in async_handler_complete_cb. Fixes bug #430488
2008-09-28 Sebastien Pouliot <sebastien@ximian.com>
* HttpRequest.cs: Make sure the result of the multiplications are
longs (not integers casted into longs since they could overflow).
[Found using Gendarme's ReviewCastOnIntegerMultiplicationRule]
2008-09-23 Marek Habersack <mhabersack@novell.com>
* HttpWorkerRequest.cs: implemented a SendCalculatedContentLength
overload. This method apparently does nothing in MS.NET.
2008-09-16 Juraj Skripsky <js@hotfeet.ch>
* HttpServerUtility.cs (UrlDecode, UrlEncode): Respect request/response
encoding. Fixes bug #426539.
2008-08-29 Marek Habersack <mhabersack@novell.com>
* HttpApplication.cs: do not cache handlers which aren't
reusable.
2008-08-20 Marek Habersack <mhabersack@novell.com>
* HttpResponseHeader.cs: encode header values if
httpRuntime.enableHeaderChecking is true (default). Fixes bug
#418620
2008-08-13 Marek Habersack <mhabersack@novell.com>
* HttpException.cs: do not use StringBuilder.AppendFormat when
there is no need.
2008-08-08 Marek Habersack <mhabersack@novell.com>
* XmlSiteMapProvider.cs: a better bugfix for bug #412495.
Do not call RootNode within BuildSiteMap, as it induces
recursion. Fixes bug #415685.
2008-07-29 Marek Habersack <mhabersack@novell.com>
* HttpRequest.cs: if the FilePath contains embedded cookie-less
session identifier, remove it before computing the base virtual
directory. Fixes bug #397418
2008-07-28 Marek Habersack <mhabersack@novell.com>
* XmlSiteMapProvider.cs: set the base ResourceKey to the name of
our associated site map file, so that localization works
correctly. Fixes bug #412493
Do not add the root node retrieved from BuildSiteMapRecursive in
BuildMap, if the node is already the current root node. Fixes bug
#412495
2008-07-26 Gert Driesen <drieseng@users.sourceforge.net>
* HttpCachePolicy.cs: Only add Expires header if expire date is
actually set. Removed extra tabs and regions. Code formatting.
2008-07-23 Marek Habersack <mhabersack@novell.com>
* HttpApplication.cs: do not register handlers for
BeginRequest/EndRequest when called from within the
Application_Start handler. Fixes bug #411213
* HttpApplicationFactory.cs: let the application know we're
running the Application_Start handler so that it can suppress
registering some events from inside that handler (see bug
#381971). Fixes bug #411213
2008-06-30 Marek Habersack <mhabersack@novell.com>
* HttpRuntime.cs, HttpApplication.cs: hush the warnings
* HttpContext.cs: GetGlobalObjectFromFactory caches the
ResourceManager objects now. Patch from Zoltan Varga
<vargaz@gmail.com>, thanks!
The GetGlobalObjectFromFactory caches are thread local to avoid
locking.
GetResourceObject ResourceManager cache is now a thread local
Dictionary to avoid cloning.
Hush the warnings.
2008-06-27 Robert Jordan <robertj@gmx.net>
* HttpCachePolicy.cs: map default HttpCacheability to
"Cache-control: private" for MS.NET compatibility.
Fixes bug #404083. Contributed by
Hubert FONGARNAND <informatique.internet@fiducial.fr>.
2008-06-21 Robert Jordan <robertj@gmx.net>
* HttpRuntime.cs (.cctor): Workaround for bug #402263.
2008-06-19 Marek Habersack <mhabersack@novell.com>
* MimeTypes.cs: added a mime type entry for .xpi files.
2008-06-18 Juraj Skripsky <js@hotfeet.ch>
* HttpResponse.cs (AddHeadersNoCache): Add "X-AspNet-Version" header if
enabled.
2008-06-16 Noam Lampert <noaml@mainsoft.com>
* HttpContext.cs: improve support for RewritePath
2008-06-10 Marek Habersack <mhabersack@novell.com>
* HttpRuntime.cs: do not create a new thread to run the
application, reuse the thread from the hosting application (XSP's
thread comes from threadpool).
2008-06-06 Marek Habersack <mhabersack@novell.com>
* SiteMap.cs: FindCurrentNode is no longer needed. CurrentNode
uses Provider.CurrentNode to find the return value.
AddNode doesn't throw a duplicate key exception for nodes not
belonging to the current provider.
Check whether keys exist before removing entries from the
dictionaries.
* XmlSiteMapProvider.cs: implemented support for child providers
(the AddProvider method). FindSiteMapNode* methods look for the
node also in the collection of child providers. Fixes bug #397040
2008-06-04 Marek Habersack <mhabersack@novell.com>
* HttpResponse.cs: correctly modify virtual path to include the
session ID in cookieless session mode. Fixes bug #396628.
* HttpServerUtility.cs: remove session hash from the URL if in the
cookieless mode. Fixes bug #396628.
* HttpRequest.cs: make sure that BaseVirtualDir always returns
some value.
2008-06-02 Miguel de Icaza <miguel@novell.com>
* HttpRuntime.cs: Thanks to Christian Hergert for finding this
one.
Do not throw NIEX on IsOnUNCShare, instead compute the value.
2008-05-30 Marek Habersack <mhabersack@novell.com>
* HttpApplication.cs, HttpCachePolicy.cs, SiteMapProvider.cs,
TraceContext.cs: do not use synthetized event accessors (to avoid
locks).
2008-05-19 Noam Lampert <noaml@mainsoft.com>
* HttpServerUtility.cs: Fix bug in UrlPathEncode when URL contains '?'
2008-05-12 Noam Lampert <noaml@mainsoft.com>
* HttpApplication.cs: Fix regressions introduced by latest commit
2008-05-07 Gonzalo Panigua Javier <gonzalo.mono@gmail.com>
* HttpApplication.cs: create a fake context while loading the
modules on the first request so that the modules don't mess up
with the actual output of that request.
2008-05-07 Marek Habersack <mhabersack@novell.com>
* HttpRequest.cs: StripPath should handle UNC paths too. Fixes bug
#385870. Patch from Ivan Hamilton <ivan@chimerical.com.au>,
thanks!
2008-05-06 Marek Habersack <mhabersack@novell.com>
* MimeTypes.cs: mime type keys might not exist in the dictionary,
in the 2.0 profile. Patch from Rolf Kvinge <rkvinge@novell.com>
and Jean-Baptiste Evain <jbevain@novell.com>, thanks! Fixes bug
#386008
2008-04-30 Marek Habersack <mhabersack@novell.com>
* HttpApplication.cs: when the Start method is called in a new
thread, the thread's culture and ui culture are set to their
defaults, thus ignoring whatever their values were in the parent
thread. This is now fixed by passing an array containing the
culture values to the Start method, so that the new thread can be
properly initialized. Fixes bug #323566
* SiteMapNode.cs: the implicitResourceKey parameter to one of the
constructors sets the value of the ResourceKey property.
GetImplicitResourceString uses the provider's ResourceKey as the
global resource object key and the node's ResourceKey to construct
the resource name. Fixes bug #323994
ResourceKey setter throws an InvalidOperationException now, when
the node is read-only.
2008-04-29 Marek Habersack <mhabersack@novell.com>
* HttpException.cs: safe guard against context being null in
GetHtmlErrorMessage.
2008-04-26 Marek Habersack <mhabersack@novell.com>
* VirtualPath.cs: added a new property, PhysicalPath.
2008-04-25 Gert Driesen <drieseng@users.sourceforge.net>
* HttpResponse.cs: Use double quotes in link to match MS.
2008-04-25 Marek Habersack <mhabersack@novell.com>
* HttpApplication.cs: use Request.CurrentExecutionFilePath when
querying for the handler. Makes requests work if request path was
rewritten without modifying the FilePath. Fixes bug #383652
* HttpContext.cs: set Request.FilePath in RewritePath only if
setClientFilePath is true. Fixes bug #383652
Revert the change in revision 100273 - the real bug was in a
different overload of RewritePath, fixed with the commit for the
above bug #383652
2008-04-24 Marek Habersack <mhabersack@novell.com>
* HttpApplication.cs: added a new overload of GetHandler which
allows the caller to ignore the handler found in the context
passed to the method.
* HttpServerUtility.cs: have HttpApplication.GetHandler ignore the
handler found in the current context when Execute'ing another
page. Fixes bug #316166
2008-04-23 Marek Habersack <mhabersack@novell.com>
* VirtualPath.cs: introduced the CurrentRequestDirectory property,
which returns the virtual directory for the current request. The
information is taken from either current request's
CurrentExecutionFilePath property (if not null) or from the path
set externally (by setting the property or using the appropriate
VirtualPath constructor). The new property is used to construct
the correct absolute virtual path in the MakeRooted method. Fixes
bug #381715.
* HttpApplication.cs: events registered from Application_Start are
silently ignored - any event registered after the one-time
application initialization is completed, is ignored. Fixes bug
#381971
* HttpApplicationFactory.cs: call app.DisposeInternal instead of
app.Dispose.
* HttpContext.cs: Fix bug #371581 for 1.1 as well.
2008-04-19 Marek Habersack <mhabersack@novell.com>
* HttpException.cs: don't write the stack trace inside html
comment if custom errors are enabled.
2008-04-15 Kornél Pál <kornelpal@gmail.com>
* HttpRuntime.cs: Don't add Date header for error pages either. Fixes bug
#363404.
2008-04-15 Marek Habersack <mhabersack@novell.com>
* HttpRequest.cs: dispose of streams the way it should
be done.
2008-04-14 Igor Zelmanovich <igorz@mainsoft.com>
* HttpRuntime.cs: refactoring.
2008-04-14 Marek Habersack <mhabersack@novell.com>
* XmlSiteMapProvider.cs: FindStartingNode throws an exception when
it is passed a file which ends in an extension other than
.sitemap.
Fixed a check for the siteMapFile attribute presence. Fixes bug
#379566.
* SiteMap.cs: FindCurrent node uses the default provider
exclusively. Fixes bug #379566
2008-04-10 Marek Habersack <mhabersack@novell.com>
* HttpApplicationFactory.cs: compile web references before
App_Code. Fixes bug #377934
* MimeTypes.cs: added some missing MIME types. New entries
contributed by Albert Ritmeester
<aritmeester@vitalhealthsoftware.nl>, thanks! Fixes bug #372290
2008-04-09 Marek Habersack <mhabersack@novell.com>
* HttpContext.cs: make RewritePath work correctly in the 2.0
profile, fixes bug #371581
* HttpApplicationFactory.cs: compile web references. Fixes bug
#377934
* VirtualPath.cs: added a method to convert a physical path into a
virtual one, if the physical path is under the application root.
2008-04-08 Dean Brettle <dean@brettle.com>
* HttpApplicationFactory.cs (CapabilitiesProcessor): changed to
use etc/mono/2.0/Browser/*.browser files in addition to
~/App_Browsers/*.browser files.
2008-04-07 Marek Habersack <mhabersack@novell.com>
* VirtualPath.cs: added
2008-04-02 Marek Habersack <mhabersack@novell.com>
* HttpRequest.cs: make sure QueryStringRaw is always returned with
a leading '?' and that we return something meaningful even if the
url components weren't collected before. Fixes bug #376352
2008-04-01 Marek Habersack <mhabersack@novell.com>
* HttpApplication.cs: set context.Handler to the detected handler
object before firing application events. Fixes bug #372897
2008-03-31 Marek Habersack <mhabersack@novell.com>
* StaticFileHandler.cs: added code to use custom
VirtualPathProvider, if present, to serve files from virtual
storage.
* HttpResponse.cs: added two internal TransmitFile overloads which
take a VirtualFile as a parameter.
2008-03-27 Marek Habersack <mhabersack@novell.com>
* HttpRequest.cs: make UrlComponents internal.
* HttpContext.cs: added support for resource provider factories.
2008-03-13 Marek Habersack <mhabersack@novell.com>
* HttpApplicationFactory.cs: use HttpApplication.BinDirs to
create watchers for binary application directories.
* HttpApplication.cs: use HttpRuntime.CaseInsensitive instead of
own IsRunningOnWindows.
Remove the BinDirectories enumerator property, replaced with a
BinDirectory one returning a string with path to the binary
directory.
* HttpRuntime.cs: introduce two static properties -
CaseInsensitive (set to true whenever the environment is
case-insensitive - i.e. MONO_IOMAP="all" or MONO_IOMAP="case", or
running on Windows) and RunningOnWindows.
2008-03-12 Marek Habersack <mhabersack@novell.com>
* HttpApplication.cs: HttpContext.Handler may be set by a module
in any of the event handlers between acquiring the initial handler
and processing the request. Honor the setting and use
HttpContext.Handler instead of the matched one if set.
2008-03-10 Marek Habersack <mhabersack@novell.com>
* HttpApplication.cs: synchronize Modules and Dispose with
InitOnce. Should prevent firing module events before the modules
are fully initialized.
2008-03-09 Dean Brettle <dean@brettle.com>
* HttpApplicationFactory.cs: Added support for detecting
App_Browsers/*.browser files and using them to determine capabilities.
Also restart the app if the App_Browsers, App_Code, or App_GlobalResources
directories are created.
* BrowserCapabilities.cs (TagWriter): get value via internal virtual
GetTagWriter() method, which is overridden in nBrowser.Result.
* HttpRequest.cs (BrowserMightHaveSpecialWriter, BrowserMightHaveAdapters):
internal properties added to allow Page and Control methods to avoid
accessing Request.Browser to get browser-specific HtmlTextWriters or
ControlAdapters. Those things only exist when there are App_Browsers
files.
2008-03-09 Marek Habersack <mhabersack@novell.com>
* HttpUtility.cs: HTML-decode the query string prior to parsing
it.
2008-03-01 Marek Habersack <mhabersack@novell.com>
* HttpRuntime.cs: SettingsMappingManager has been moved to
Mono.Web.
2008-02-28 Marek Habersack <mhabersack@novell.com>
* HttpParamsCollection.cs: restore the GetValues overrides only to
make sure the collections are merged before invoking the base
implementation.
Remove code that's no longer needed.
2008-02-27 Marek Habersack <mhabersack@novell.com>
* HttpException.cs: error message output format changes.
2008-02-26 Kornél Pál <kornelpal@gmail.com>
* HttpResponse.cs: Don't add Date header because servers usually add
a Date header that would result in duplicate Date header sent to the
client. Fixes bug #363404.
2008-02-25 Marek Habersack <mhabersack@novell.com>
* HttpException.cs: fix a buglet with unfoldable hidden divs which
contain the full compiler output and the full source code.
* HttpContext.cs: correctly set the timeout if the user has
specified a timeout which, when converted to milliseconds yields a
value larger than one allowed by Timer.Change. This can happen,
for instance, when HttpServerUtility.ScriptTimeout is set to
Int32.MaxValue. Previously, when something like that happened, the
value was converted to 0ms, giving an instantenous timer
expiration and, what follows, a request "timeout".
2008-02-19 Marek Habersack <mhabersack@novell.com>
* HttpParamsCollection.cs: do not override the NVC behavior for
GetValues - values from different sources (Form, Query, Cookies,
ServerVariables) must be kept separate for this purpose. This is
also the behavior of MS.NET. Fixes bug #362189
2008-02-18 Marek Habersack <mhabersack@novell.com>