ソースを参照

change modulecomm, savefatalerror function, add mkdir log.

yuchuli 1 年間 前
コミット
90d59b5a0f
1 ファイル変更13 行追加1 行削除
  1. 13 1
      src/common/modulecomm/shm/procsm.cpp

+ 13 - 1
src/common/modulecomm/shm/procsm.cpp

@@ -126,6 +126,7 @@ procsm::procsm(const char * strsmname,const unsigned int nBufSize,const unsigned
 
 
 //
 //
 
 
+//    savefatalerror("procsm");
     char strasmname[300];
     char strasmname[300];
     snprintf(strasmname,255,"%s_%lld",strsmname,std::chrono::system_clock::now().time_since_epoch().count());
     snprintf(strasmname,255,"%s_%lld",strsmname,std::chrono::system_clock::now().time_since_epoch().count());
 
 
@@ -926,10 +927,21 @@ int procsm::readmsg(unsigned int index, char *str, unsigned int nMaxSize,unsigne
 
 
 void procsm::savefatalerror(char * strerr)
 void procsm::savefatalerror(char * strerr)
 {
 {
+
+    char strdirname[256];
+    snprintf(strdirname,256,"%s/log",getenv("HOME"));
+    QDir xDir(strdirname);
+    if(!xDir.exists())
+    {
+        xDir.mkdir(strdirname);
+    }
+
     QFile xFile;
     QFile xFile;
     int64_t nNow = std::chrono::system_clock::now().time_since_epoch().count();
     int64_t nNow = std::chrono::system_clock::now().time_since_epoch().count();
     char strfilename[256];
     char strfilename[256];
-    snprintf(strfilename,256,"%s/log/modulecomm_%ld.log",getenv("HOME"),nNow);
+    snprintf(strfilename,256,"%s/modulecomm_%ld.log",strdirname,nNow);
+
+
     xFile.setFileName(strfilename);
     xFile.setFileName(strfilename);
     if(xFile.open(QIODevice::ReadWrite))
     if(xFile.open(QIODevice::ReadWrite))
     {
     {