Debug Log: Accept path to log file
This change overloads the Dump Debug Log function to optionally
accept a filename to dump the debug log to. This comes in handy
when dealing with multiple devices.
BUG=chromium:362237
TEST=None
Change-Id: I5576c4f61af525eebd80722cb478434c6233938d
Reviewed-on: https://chromium-review.googlesource.com/194145
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
diff --git a/include/libevdev/libevdev_event.h b/include/libevdev/libevdev_event.h
index 496f030..a220519 100755
--- a/include/libevdev/libevdev_event.h
+++ b/include/libevdev/libevdev_event.h
@@ -42,6 +42,7 @@
void Event_Open(EvdevPtr);
bool Event_Process(EvdevPtr, struct input_event*);
void Event_Dump_Debug_Log(void *);
+void Event_Dump_Debug_Log_To(void *, const char*);
void Event_Clear_Debug_Log(void *);
int Event_Get_Left(EvdevPtr);
diff --git a/src/libevdev_event.c b/src/libevdev_event.c
index ef7e342..a633cf1 100755
--- a/src/libevdev_event.c
+++ b/src/libevdev_event.c
@@ -490,14 +490,19 @@
* Dump the log of input events to disk
*/
void
-Event_Dump_Debug_Log(void* vinfo)
+Event_Dump_Debug_Log(void* vinfo) {
+ Event_Dump_Debug_Log_To(vinfo, "/var/log/xorg/cmt_input_events.dat");
+}
+
+void
+Event_Dump_Debug_Log_To(void* vinfo, const char* filename)
{
EvdevPtr device = (EvdevPtr) vinfo;
size_t i;
int ret;
EventStatePtr evstate = device->evstate;
- FILE* fp = fopen("/var/log/xorg/cmt_input_events.dat", "wb");
+ FILE* fp = fopen(filename, "wb");
if (!fp) {
LOG_ERROR(device, "fopen() failed for debug log");
return;