/// <exception cref="SharpCifs.Dcerpc.Ndr.NdrException"></exception> public override void Decode(NdrBuffer src) { src.Align(4); Count = src.Dec_ndr_long(); int arrayp = src.Dec_ndr_long(); if (arrayp != 0) { src = src.Deferred; int arrays = src.Dec_ndr_long(); int arrayi = src.Index; src.Advance(4 * arrays); if (Array == null) { if (arrays < 0 || arrays > unchecked (0xFFFF)) { throw new NdrException(NdrException.InvalidConformance); } Array = new ShareInfo0[arrays]; } src = src.Derive(arrayi); for (int i = 0; i < arrays; i++) { if (Array[i] == null) { Array[i] = new ShareInfo0(); } Array[i].Decode(src); } } }
/// <exception cref="SharpCifs.Dcerpc.Ndr.NdrException"></exception> public override void Decode(NdrBuffer src) { src.Align(4); Count = src.Dec_ndr_long(); int arrayp = src.Dec_ndr_long(); if (arrayp != 0) { src = src.Deferred; int arrays = src.Dec_ndr_long(); int arrayi = src.Index; src.Advance(4 * arrays); if (Array == null) { if (arrays < 0 || arrays > unchecked(0xFFFF)) { throw new NdrException(NdrException.InvalidConformance); } Array = new ShareInfo0[arrays]; } src = src.Derive(arrayi); for (int i = 0; i < arrays; i++) { if (Array[i] == null) { Array[i] = new ShareInfo0(); } Array[i].Decode(src); } } }