]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
Event: Avoid illegal multiplication for memset 3265/head
authorHaomai Wang <haomaiwang@gmail.com>
Sun, 28 Dec 2014 13:31:35 +0000 (21:31 +0800)
committerHaomai Wang <haomaiwang@gmail.com>
Sun, 28 Dec 2014 13:31:35 +0000 (21:31 +0800)
Because "file_events" is "FileEvent" type and adding an integral value to
this pointer automatically scales that value by the size.

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
src/msg/async/Event.cc

index 2aea4ba0303f33b44399c2e97af1e10b12a2da59..94c2ed1baec8931c24ec50db88a48e53522457ff 100644 (file)
@@ -120,7 +120,7 @@ int EventCenter::create_file_event(int fd, int mask, EventCallbackRef ctxt)
       lderr(cct) << __func__ << " failed to realloc file_events" << cpp_strerror(errno) << dendl;
       return -errno;
     }
-    memset(file_events+sizeof(FileEvent)*nevent, 0, sizeof(FileEvent)*(new_size-nevent));
+    memset(file_events+nevent, 0, sizeof(FileEvent)*(new_size-nevent));
     file_events = new_events;
     nevent = new_size;
   }