[BT C#] Fix crash in read manuf data 43/113543/1
authorSudha Bheemanna <b.sudha@samsung.com>
Wed, 8 Feb 2017 05:57:13 +0000 (11:27 +0530)
committerSudha Bheemanna <b.sudha@samsung.com>
Wed, 8 Feb 2017 05:57:13 +0000 (11:27 +0530)
Fixed crash in read manufacturer data.
code clean-up

Change-Id: I801395d6dade184881da3e3b8316d57a26227d7e
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Tizen.Network.Bluetooth/Tizen.Network.Bluetooth/BluetoothLeAdapterImpl.cs

index a6773af..1fb02de 100755 (executable)
@@ -359,8 +359,8 @@ namespace Tizen.Network.Bluetooth
 
         internal ManufacturerData GetScanResultManufacturerData(BluetoothLeScanData scanData, BluetoothLePacketType packetType)
         {
-            int dataId;
-            int dataLength;
+            int dataId = 0;
+            int dataLength = 0;
             IntPtr manufData;
 
             BluetoothLeScanDataStruct scanDataStruct = BluetoothUtils.ConvertLeScanDataToStruct (scanData);
@@ -377,7 +377,10 @@ namespace Tizen.Network.Bluetooth
             data.Id = dataId;
             data.DataLength = dataLength;
             if (data.DataLength > 0)
+            {
+                data.Data = new byte[data.DataLength];
                 Marshal.Copy(manufData, data.Data, 0, data.DataLength);
+            }
 
             return data;
         }
@@ -425,8 +428,6 @@ namespace Tizen.Network.Bluetooth
                             BluetoothLeAdvertisingState state, IntPtr userData) =>
             {
                 Log.Info(Globals.LogTag, "Setting advertising state changed callback !! " );
-                // TODO: check if this conversion is required
-                BluetoothLeAdvertiser leAdvertiser = (BluetoothLeAdvertiser)Marshal.PtrToStructure(advertiserHandle, typeof(BluetoothLeAdvertiser));
                 AdvertisingStateChangedEventArgs e = new AdvertisingStateChangedEventArgs(result, advertiserHandle, state);
                 _advertisingStateChanged(null, e);
             };