diff --git a/CHANGELOG.md b/CHANGELOG.md
index 91f56b7..0a767dc 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,8 @@
# Changelog
+### Changelog 1.99
+- Added support for FW 3.71.
+
### Changelog 1.98
- Improved "Refresh LiveArea". Thanks to TheRadziu.
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 610a865..a1870a2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -14,7 +14,7 @@ project(VitaShell)
include("${VITASDK}/share/vita.cmake" REQUIRED)
set(VITA_APP_NAME "VitaShell")
set(VITA_TITLEID "VITASHELL")
-set(VITA_VERSION "01.98")
+set(VITA_VERSION "01.99")
# Flags and includes
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -O3 -Wno-unused-variable -Wno-unused-but-set-variable -Wno-format-truncation -fno-lto")
diff --git a/audioplayer.c b/audioplayer.c
index 2bf9dc4..0b267b2 100644
--- a/audioplayer.c
+++ b/audioplayer.c
@@ -92,9 +92,9 @@ void drawLyrics(Lyrics* lyrics, const char *cur_time_string, uint64_t* totalms,
char minuteString[3];
char secondString[3];
- strncpy(hourString,cur_time_string,sizeof(hourString));
- strncpy(minuteString,cur_time_string + 3,sizeof(minuteString));
- strncpy(secondString,cur_time_string + 6,sizeof(secondString));
+ strncpy(hourString,cur_time_string,sizeof(hourString)-1);
+ strncpy(minuteString,cur_time_string + 3,sizeof(minuteString)-1);
+ strncpy(secondString,cur_time_string + 6,sizeof(secondString)-1);
*totalms = (((atoi(hourString) * 60) + atoi(minuteString)) * 60 + atoi(secondString)) * 1000;
diff --git a/io_process.c b/io_process.c
index 863f221..0f15f1a 100644
--- a/io_process.c
+++ b/io_process.c
@@ -467,7 +467,8 @@ static int exportMedia(char *path, uint32_t *songs, uint32_t *videos, uint32_t *
} else if (type == FILE_TYPE_MP4) {
VideoExportInputParam in_param;
memset(&in_param, 0, sizeof(VideoExportInputParam));
- strncpy(in_param.path, path, MAX_PATH_LENGTH);
+ strncpy(in_param.path, path, MAX_PATH_LENGTH-1);
+ in_param.path[MAX_PATH_LENGTH-1] = '\0';
VideoExportOutputParam out_param;
memset(&out_param, 0, sizeof(VideoExportOutputParam));
diff --git a/main.h b/main.h
index e5d4242..e70b11d 100644
--- a/main.h
+++ b/main.h
@@ -54,7 +54,7 @@
// VitaShell version major.minor
#define VITASHELL_VERSION_MAJOR 0x01
-#define VITASHELL_VERSION_MINOR 0x98
+#define VITASHELL_VERSION_MINOR 0x99
#define VITASHELL_VERSION ((VITASHELL_VERSION_MAJOR << 0x18) | (VITASHELL_VERSION_MINOR << 0x10))
diff --git a/main_context.c b/main_context.c
index be0fd5e..59b02cc 100644
--- a/main_context.c
+++ b/main_context.c
@@ -1310,7 +1310,8 @@ static int contextMenuNewEnterCallback(int sel, void *context) {
snprintf(cur_file, MAX_PATH_LENGTH, "%s%s", file_list.path, file_entry->name);
char target[MAX_PATH_LENGTH];
char name[MAX_PATH_LENGTH];
- strncpy(name, file_entry->name, MAX_PATH_LENGTH);
+ strncpy(name, file_entry->name, MAX_PATH_LENGTH-1);
+ name[MAX_PATH_LENGTH-1] = '\0';
removeEndSlash(name);
snprintf(target, MAX_PATH_LENGTH, "%s%s."SYMLINK_EXT, VITASHELL_BOOKMARKS_PATH, name);
int res;
diff --git a/pkg/sce_sys/livearea/contents/template.xml b/pkg/sce_sys/livearea/contents/template.xml
index 9777ede..7dfead6 100644
--- a/pkg/sce_sys/livearea/contents/template.xml
+++ b/pkg/sce_sys/livearea/contents/template.xml
@@ -28,7 +28,7 @@
- v1.98
+ v1.99
diff --git a/release/VitaShell.vpk b/release/VitaShell.vpk
index 90a60ab..43452bb 100644
Binary files a/release/VitaShell.vpk and b/release/VitaShell.vpk differ
diff --git a/release/eboot.bin b/release/eboot.bin
index bab9a8f..5371ca8 100644
Binary files a/release/eboot.bin and b/release/eboot.bin differ
diff --git a/release/param.sfo b/release/param.sfo
index a55120a..03d5610 100644
Binary files a/release/param.sfo and b/release/param.sfo differ
diff --git a/release/template.xml b/release/template.xml
index 9777ede..7dfead6 100644
--- a/release/template.xml
+++ b/release/template.xml
@@ -28,7 +28,7 @@
- v1.98
+ v1.99
diff --git a/release/version.bin b/release/version.bin
index 994c3ba..6fde829 100644
Binary files a/release/version.bin and b/release/version.bin differ