diff --git a/LUFA/Drivers/USB/Class/Device/HID.c b/LUFA/Drivers/USB/Class/Device/HID.c
index a99c2647cc52f6b1ff3add57bd174ed213ef6414..403d494dcd6b5e7f62f42e2374d3b62baded55c0 100644
--- a/LUFA/Drivers/USB/Class/Device/HID.c
+++ b/LUFA/Drivers/USB/Class/Device/HID.c
@@ -56,6 +56,7 @@ void HID_Device_ProcessControlRequest(USB_ClassInfo_HID_Device_t* const HIDInter
 				CALLBACK_HID_Device_CreateHIDReport(HIDInterfaceInfo, &ReportID,
 				                                    HIDInterfaceInfo->Config.PrevReportINBuffer, &ReportINSize);
 
+				Endpoint_SelectEndpoint(ENDPOINT_CONTROLEP);
 				Endpoint_Write_Control_Stream_LE(HIDInterfaceInfo->Config.PrevReportINBuffer, ReportINSize);
 				Endpoint_ClearOUT();
 			}
@@ -167,6 +168,8 @@ void HID_Device_USBTask(USB_ClassInfo_HID_Device_t* const HIDInterfaceInfo)
 		{
 			HIDInterfaceInfo->State.IdleMSRemaining = HIDInterfaceInfo->State.IdleCount;
 
+			Endpoint_SelectEndpoint(HIDInterfaceInfo->Config.ReportINEndpointNumber);
+
 			if (ReportID)
 			  Endpoint_Write_Byte(ReportID);
 
diff --git a/LUFA/ManPages/ChangeLog.txt b/LUFA/ManPages/ChangeLog.txt
index fd70eb09cd91b9cb92419e26ae56355f1dcbe388..7b50da95e747cd7430eec5080b14ba9a6476b540 100644
--- a/LUFA/ManPages/ChangeLog.txt
+++ b/LUFA/ManPages/ChangeLog.txt
@@ -34,6 +34,7 @@
   *  - Fixed ClassDriver AudioOutput device demo not selecting an audio output mode
   *  - Fixed incorrect SampleFrequencyType value in the AudioInput and AudioOutput ClassDriver demos' descriptors
   *  - Fixed incorrect event name rule in demo/project/bootloader makefiles
+  *  - Fixed HID device class driver not reselecting the correct endpoint once the user callback routines have been called
   *
   *  \section Sec_ChangeLog090924 Version 090924
   *
diff --git a/LUFA/ManPages/FutureChanges.txt b/LUFA/ManPages/FutureChanges.txt
index ea93258ba29a3cb551f3ec2023c5029bc3c892db..f1f2a8c7ebeed5aee55236b34b272f04e3a6be93 100644
--- a/LUFA/ManPages/FutureChanges.txt
+++ b/LUFA/ManPages/FutureChanges.txt
@@ -21,7 +21,6 @@
   *  - Add detailed overviews of how each demo works
   *  - Master LUFA include file rather than per-module includes
   *  - Change makefiles to allow for absolute LUFA location to be used
-  *  - Abstract out the physical media from the Mass Storage device demos
   *  - Add RNDIS Host Class driver
   *  - Add unit testing to APIs
   *  - Make new demos
diff --git a/LUFA/ManPages/LibraryResources.txt b/LUFA/ManPages/LibraryResources.txt
index a1005d401310f0cb0f3e501b646dd06087b32781..759a8c0efc8c1f5a4118435b7f8a6be2db9432fa 100644
--- a/LUFA/ManPages/LibraryResources.txt
+++ b/LUFA/ManPages/LibraryResources.txt
@@ -11,6 +11,7 @@
  *  Development Blog: http://www.fourwalledcubicle.com/blog \n
  *  Discussion Group: http://groups.google.com/group/myusb-support-list \n
  *  SVN Access, Bug Reports and Feature Requests: http://code.google.com/p/lufa-lib/ \n
+ *  Git Access: http://github.com/abcminiuser/lufa-lib
  *  Author's Website: http://www.fourwalledcubicle.com \n
  *
  *  WinAVR Website: http://winavr.sourceforge.net \n
diff --git a/LUFA/makefile b/LUFA/makefile
index 4e9b8ca199c48334d05e71d5bea4cd2eb818d618..c668399d46d17098bdbdea7a44aacc1b73fbc110 100644
--- a/LUFA/makefile
+++ b/LUFA/makefile
@@ -38,7 +38,7 @@ LUFA_Events.lst:
 	@echo Generating LUFA event name list...
 	@$(shell) cat `find ./ -name "*.h"` | grep -E "EVENT_[^\(]*\(" | \
 	              sed -n -e 's/^.*EVENT_/EVENT_/p' | \
-	              cut -d'(' -f1 | sort | uniq > LUFA_Events.lst
+	              cut -d'(' -f1 | sort | uniq | tee LUFA_Events.lst
 				  
 all: LUFA_Events.lst