[Pkg-mono-svn-commits] [SCM] mono branch, master, updated. debian/2.4.2.3+dfsg-2-5-g231ef33
Jo Shields
directhex at apebox.org
Sun Nov 15 19:24:07 UTC 2009
The following commit has been merged in the master branch:
commit 3b7206884a134a9144b41e47220d996303d51e37
Author: Jo Shields <directhex at apebox.org>
Date: Sun Nov 15 18:03:29 2009 +0000
Added patch from SVN to fix GridView on ASP.NET
diff --git a/debian/changelog b/debian/changelog
index 1e50779..7a35f5a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -3,6 +3,8 @@ mono (2.4.2.3+dfsg-3) UNRELEASED; urgency=low
[ Jo Shields ]
* Add missing Conflicts/Replaces on monodoc-base from pre-Squeeze due
to monodoc.dll.mdb conflict
+ * debian/patches/fix_gridview_r146128.dpatch:
+ + Add fix from Mono SVN for TableRowCollection in ASP.NET
[ Mirco Bauer ]
* Added mono-gmcs to mono-csharp-shell dependencies as it links gmcs.exe
diff --git a/debian/patches/00list b/debian/patches/00list
index e9ea2c7..1259a8d 100644
--- a/debian/patches/00list
+++ b/debian/patches/00list
@@ -15,6 +15,7 @@ fix_mdoc_build
fix_tuner_build
fix_metadata_dup
fix_CreateDelegate_ArgumentException
+fix_gridview_r146128
disable_building_convert.exe
disable_bug-80307_test
build_cecil_as_2.0
diff --git a/debian/patches/fix_gridview_r146128.dpatch b/debian/patches/fix_gridview_r146128.dpatch
new file mode 100755
index 0000000..9ffcfd4
--- /dev/null
+++ b/debian/patches/fix_gridview_r146128.dpatch
@@ -0,0 +1,147 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## fix-mono-cairo.pc.in.dpatch by Jo Shields <directhex at debian.org>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: No description.
+
+ at DPATCH@
+Index: mono-2-4/mcs/class/System.Web/System.Web.UI.WebControls/TableRowCollection.cs
+===================================================================
+--- mono-2-4/mcs/class/System.Web/System.Web.UI.WebControls/TableRowCollection.cs (revision 146127)
++++ mono-2-4/mcs/class/System.Web/System.Web.UI.WebControls/TableRowCollection.cs (revision 146128)
+@@ -43,6 +43,9 @@
+
+ internal TableRowCollection (Table table)
+ {
++ if (table == null)
++ throw new ArgumentNullException ("table");
++
+ cc = table.Controls;
+ owner = table;
+ }
+@@ -69,9 +72,12 @@
+
+ public int Add (TableRow row)
+ {
++ if (row == null)
++ throw new NullReferenceException (); // .NET compatibility
+ #if NET_2_0
+ if (row.TableRowSectionSet)
+ owner.GenerateTableSections = true;
++ row.Container = this;
+ #endif
+ int index = cc.IndexOf (row);
+ if (index < 0) {
+@@ -83,10 +89,14 @@
+
+ public void AddAt (int index, TableRow row)
+ {
++ if (row == null)
++ throw new NullReferenceException (); // .NET compatibility
++
+ if (cc.IndexOf (row) < 0) {
+ #if NET_2_0
+ if (row.TableRowSectionSet)
+ owner.GenerateTableSections = true;
++ row.Container = this;
+ #endif
+ cc.AddAt (index, row);
+ }
+@@ -95,10 +105,14 @@
+ public void AddRange (TableRow[] rows)
+ {
+ foreach (TableRow tr in rows) {
++ if (tr == null)
++ throw new NullReferenceException (); // .NET compatibility
++
+ if (cc.IndexOf (tr) < 0) {
+ #if NET_2_0
+ if (tr.TableRowSectionSet)
+ owner.GenerateTableSections = true;
++ tr.Container = this;
+ #endif
+ cc.Add (tr);
+ }
+@@ -128,13 +142,25 @@
+ return cc.IndexOf (row);
+ }
+
++#if NET_2_0
++ internal void RowTableSectionSet ()
++ {
++ owner.GenerateTableSections = true;
++ }
++#endif
++
+ public void Remove (TableRow row)
+ {
++ row.Container = null;
+ cc.Remove (row);
+ }
+
+ public void RemoveAt (int index)
+ {
++ TableRow row = this [index] as TableRow;
++ if (row != null)
++ row.Container = null;
++
+ cc.RemoveAt (index);
+ }
+
+@@ -156,28 +182,27 @@
+
+ int IList.Add (object value)
+ {
+- cc.Add ((TableRow)value);
+- return cc.IndexOf ((TableRow)value);
++ return Add (value as TableRow);
+ }
+
+ bool IList.Contains (object value)
+ {
+- return cc.Contains ((TableRow)value);
++ return cc.Contains (value as TableRow);
+ }
+
+ int IList.IndexOf (object value)
+ {
+- return cc.IndexOf ((TableRow)value);
++ return cc.IndexOf (value as TableRow);
+ }
+
+ void IList.Insert (int index, object value)
+ {
+- cc.AddAt (index, (TableRow)value);
++ AddAt (index, value as TableRow);
+ }
+
+ void IList.Remove (object value)
+ {
+- cc.Remove ((TableRow)value);
++ Remove (value as TableRow);
+ }
+ }
+ }
+Index: mono-2-4/mcs/class/System.Web/System.Web.UI.WebControls/TableRow.cs
+===================================================================
+--- mono-2-4/mcs/class/System.Web/System.Web.UI.WebControls/TableRow.cs (revision 146127)
++++ mono-2-4/mcs/class/System.Web/System.Web.UI.WebControls/TableRow.cs (revision 146128)
+@@ -47,6 +47,8 @@
+ TableCellCollection cells;
+ #if NET_2_0
+ bool tableRowSectionSet;
++
++ internal TableRowCollection Container { get; set; }
+ #endif
+
+ public TableRow ()
+@@ -129,6 +131,9 @@
+ throw new ArgumentOutOfRangeException ("TableSection");
+ ViewState ["TableSection"] = (int) value;
+ tableRowSectionSet = true;
++ TableRowCollection container = Container;
++ if (container != null)
++ container.RowTableSectionSet ();
+ }
+ }
+ #endif
--
mono
More information about the Pkg-mono-svn-commits
mailing list